maven打包No compiler is provided in this environment和没有主清单属性

一。编译问题

maven打包遇到

No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

按照https://blog.csdn.net/lslk9898/article/details/73836745 操作了一遍还是出错,光按 maven-Update Projects偶尔可以打包成功一次,但包运行时又会提示找不到主清单。  

无奈只能重新把jdk和maven都重新下载,结果好了

完整的操作:

1.我把jdk重新下载安装了

2.并在eclipse中设置 window- preferences - java - installed jres . 这里一定要设置成你电脑上的jdk 而不是jre

3.maven重新下载,并且在eclipse中设置,因为eclipse本身有maven插件,所以平常导maven项目看不出来问题

在window- preferences - maven - installations add上你自己下载的maven

在user settiongs中设置好 自己下载的maven的配置文件

4.右键点击项目,buildpath- configbuildpath。

确定使用的jre是自己jdk下的jre

然后就可以正常打包了。

二。没有主清单属性

但运行包又发现没有主清单属性,网上的方法都是自己加mainclass 或者是自己在pom文件中指定mainclass,

其实只要是springboot项目并且你在pom文件中 只要有springboot-maven插件,它就会打出正常的包

但我的项目有这个插件还是失败

	<plugin>
  		<groupId>org.springframework.boot</groupId>
 		<artifactId>spring-boot-maven-plugin</artifactId>
  	</plugin>

我随便拉了一个sprinboot项目进行对比。 正常打包结果是这样的结果,包里有BOOT-INF

但我的结果是这样的:没有该有的信息

我拿问题项目中的pom 内容复制到新springbooot项目中的pom,一个一个试,最后找到了罪魁祸首

我之前为了在其中加mybatis逆向工程,直接加逆向工程的插件会出错,就用了<pluginManagement>标签完成。就是这个标签影响了打包。去掉<pluginManagement>和逆向工程后,打包成功。

在网上也没有找到相关的信息,很奇怪

猜你喜欢

转载自blog.csdn.net/u014203449/article/details/81083032