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打包就会重新出现

image.png image.png

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>
上一篇下一篇

猜你喜欢

热点阅读