在學習scala語言的過程中,需要使用idea編譯器創建一個maven項目來實現其中的一個akka框架,但是遇到了問題,我花了好久好久…才解決,這裏謝謝一位熱心的小哥給我幫助。
1.idea的初始化配置
idea安裝就一直下一步即可,在選擇安裝路徑的時候,可以放到自己的默認路徑
下面是我安裝之後的初始化配置:
設置背景
取消自動打開idea關閉前的文件
設置字體大小
下載需要的文件,如:scala
配置maven
設置全局配置
導入本地的JDK包
設置代碼縮進格式
2.創建maven項目的步驟
需要往pom.xml文件中寫入的內容是(注意這個內容是針對akka項目,要是需要有其他不同的項目需要寫入其他不同的內容,然後idea就會自動下載所涉及的包):
<!-- 定義一下常量 -->
<properties>
<encoding>UTF-8</encoding>
<scala.version>2.11.8</scala.version>
<scala.compat.version>2.11</scala.compat.version>
<akka.version>2.4.17</akka.version>
</properties>
<dependencies>
<!-- 添加scala的依賴 -->
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>${scala.version}</version>
</dependency>
<!-- 添加akka的actor依賴 -->
<dependency>
<groupId>com.typesafe.akka</groupId>
<artifactId>akka-actor_${scala.compat.version}</artifactId>
<version>${akka.version}</version>
</dependency>
<!-- 多進程之間的Actor通信 -->
<dependency>
<groupId>com.typesafe.akka</groupId>
<artifactId>akka-remote_${scala.compat.version}</artifactId>
<version>${akka.version}</version>
</dependency>
</dependencies>
<!-- 指定插件-->
<build>
<!-- 指定源碼包和測試包的位置 -->
<sourceDirectory>src/main/scala</sourceDirectory>
<testSourceDirectory>src/test/scala</testSourceDirectory>
<plugins>
<!-- 指定編譯scala的插件 -->
<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>scala-maven-plugin</artifactId>
<version>3.2.2</version>
<executions>
<execution>
<goals>
<goal>compile</goal>
<goal>testCompile</goal>
</goals>
<configuration>
<args>
<arg>-dependencyfile</arg>
<arg>${project.build.directory}/.scala_dependencies</arg>
</args>
</configuration>
</execution>
</executions>
</plugin>
<!-- maven打包的插件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.4.3</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<filters>
<filter>
<artifact>*:*</artifact>
<excludes>
<exclude>META-INF/*.SF</exclude>
<exclude>META-INF/*.DSA</exclude>
<exclude>META-INF/*.RSA</exclude>
</excludes>
</filter>
</filters>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>reference.conf</resource>
</transformer>
<!-- 指定main方法 -->
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>cn.sheep.robot.ClientActor</mainClass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
然後需要創建下面兩個文件夾:(下載過程會很慢)
創建上面第一個文件夾的過程如下:
創建第二個文件夾如下:
2.遇到的問題如下:
最終經過查詢,是因爲在相應的maven文件中指定的下載jar包的文件夾中沒有下載到這個jar包。
解決方案:我不使用idea默認的maven,自己又下載了一個maven需要配置路徑
在maven中有下圖所示的文件,打開寫入默認路徑:
至此,問題就解決了,當出現上面的問題時,就換個maven試試,不要急躁,會弄好的。