java maven 一些回顾
2018-06-20 本文已影响29人
Helen_Cat
image.png
一段时间不常用 maven 了 ,又有点生疏 又有点熟悉亲切
碰到几个小坑 顺便解决记下来
1.java maven 导入到 IDEA,出现 source-1.5 中不支持 diamond运算符
这个其实是因为 maven项目没有指定 jdk 版本 导致idea 按 最低jdk5来编译项目,导致 一部分代码在1.5 上编辑不通过,所以需要 设定 java compiler 的全局编译 jdk的版本 ,和项目的 source 的 编译版本,不过这个治标不治本,一会儿
maven打包就会重新出现
2.maven打包 source-1.5 中不支持 diamond运算符
这个是因为 maven 项目没有指定 jdk的编译版本 导致按最低的版本 编译,导致编译不通过,解决方法就是 在pom 文件中声明 编译版本
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
2.Maven 项目生成jar运行时提示“没有主清单属性”
这个其实就是maven 打包好的 jar包,找不到 主类,甚至你在命令行指定主类也是不可以的,这个其实需要在 maven项目的pom文件指定 主类
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>com.geo.TestModelCheck </mainClass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>