Maven使用

来源:互联网 发布:江苏绿叶直销骗局知乎 编辑:程序博客网 时间:2024/05/21 17:38

1. 在Maven pom.xml中加入

<build>
  <plugins>
    <!-- plugin是用来编译scala源代码的,毕竟java与scala是二种不同的语言,
           有各自的sdk和编译器,所以需要专门的maven插件来处理scala的编译 -->
    <plugin>
       <groupId>org.scala-tools</groupId>
       <artifactId>maven-scala-plugin</artifactId>
       <version>2.15.2</version>
       <executions>
          <execution>
            <goals>
              <goal>compile</goal>
              <goal>testCompile</goal>
            </goals>
          </execution>
       </executions>
    </plugin>
  </plugins>
</build>

2. 打包命令

mvn clean package默认只处理java源代码的编译、打包,而不管scala,所以编译时遇到Hello这个由scala语言编写的class,此时scala还没编译生成class,所以找不到相应的调用入口。

解决办法:

mvn clean scala:compile compile package

如上,在compile前加入scala:compile,这是maven-scala-plugin插件提供的选项,表示编译scala,这样一来,先编译scala,再编译java,最后打包


3. 对 Maven Project 打包(实验工具是 IDEA)

打开Terminal,进入 Maven Project的路径下,运行

mvn package   --打包,但不编译 Scala 程序

在 target 的路径下,生成了

maven-archiver/pom.properties

maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst

maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst

${artifactId}-${version}.jar    ----如 SparkDemo-1.0-SNAPSHOT.jar


4. 清理已经存在的 target 路径

mvn clean   --清理已存在的 target 路径





0 0
原创粉丝点击