maven编译时出现问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了maven编译时出现问题相关的知识,希望对你有一定的参考价值。

使用idea编译maven是出现No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

"No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?"  你编译环境选的jre,也许你可以改为jdk试一下?

追问

只能是jdk加不了jre

追答

刚刚是我看的不仔细,不好意思,你的配置是正确的。是其它原因导致的编译失败

参考技术A 看起来是没配置jdk的环境吧。
安装了jdk了?
环境变量里,设置JAVA_HOME
系统环境变量path里,最前面加上%JAVA_HOME%;追问

配置jdk了,但还是这样

追答

确定是jdk,不是jre?

我这用得没碰到过这个问题。

看你的图片上的提示,好像你用的是jre

追问

只能添加jdk添加不了jre

追答

嗯,我后来看到你的图了,现在上班没法仔细检查。下班后我查一查。

检查一下maven的配置呢?

参考技术B 运行环境不兼容。调整一下即可。追问

怎么调整

用maven编译项目时出现如下问题

运行mvn clean install -Dmaven.test.skip=true出错。
[ERROR] The project com.wyz:2.0.2-SNAPSHOT (/home/wuyanzan/wyz/pom.xml) has 1 error
[ERROR] Non-resolvable parent POM: Could not find artifact com.wyz:pampas:pom:2-SNAPSHOT and 'parent.relativePath' points at wrong local POM @ line 5, column 10 -> [Help 2]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
按提示运行mvn -X clean install后,具体错误如下:
[INFO] Scanning for projects...
[DEBUG] Could not find metadata com.wyz:pampas:2-SNAPSHOT/maven-metadata.xml in local (/root/.m2/repository)
[ERROR] The build could not read 1 project -> [Help 1]
org.apache.maven.project.ProjectBuildingException: Some problems were encountered while processing the POMs:
[FATAL] Non-resolvable parent POM: Could not find artifact com.wyz:pampas:pom:2-SNAPSHOT and 'parent.relativePath' points at wrong local POM @ line 5, column 10
at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:363)
at org.apache.maven.DefaultMaven.collectProjects(DefaultMaven.java:636)
at org.apache.maven.DefaultMaven.getProjectsForMavenReactor(DefaultMaven.java:585)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:234)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
这到底是什么意思啊?

在/etc/profile配置java的环境变量: 你的mvn 项目是用哪个版本的jdk.,就要配置那个版本的jdk。

强制保存文件命令:w !sudo tee %

此时在进入项目执行:$ git pull origin master

继续mvn clean install

一、可执行的JAR文件

使用Maven 构建一个JAR 文件比较容易:只要定义项目包装为“jar”,然后执行包装生命周期阶段即可。但是定义一个可执行JAR 文件却比较麻烦。采取以下步骤可以更高效:

1、在您定义可执行类的 JAR 的MANIFEST.MF 文件中定义一个main类。(MANIFEST.MF 是包装您的应用程序时 Maven 生成的。)

2.、找到您项目依赖的所有库。

3、 在您的MANIFEST.MF 文件中包含那些库,便于您的应用程序找到它们。您可以手工进行这些操作,或者要想更高效,您可以使用两个 Maven 插件帮助您完成:maven-jar-plugin 和 maven-dependency-plugin

参考技术A maven项目编译的标准输出路径就是mavenProject/target/classes, 项目右键 build path--configure build path--java build path--source,把default output folder改成mavenProject/target/classes,在菜单栏project下把自动编译打勾。 参考技术B Non-resolvable parent POM: Could not find artifact com.wyz:pampas:pom:2-SNAPSHOT and 'parent.relativePath' points at wrong local POM @ line 5, column 10

提示在你的本地仓库或远程仓库里找不到这个com.wyz:pampas:pom:2-SNAPSHOT构件
参考技术C org.apache.maven.project.ProjectBuildingException: Some problems were encountered while processing the POMs:
[FATAL] Non-resolvable parent POM: Could not find artifact com.wyz:pampas:pom:2-SNAPSHOT and 'parent.relativePath' points at wrong local POM @ line 5, column 10追问

麻烦解释下,maven刚开始用。。

追答

parent不存在
那都写着多少行出问题的了

参考技术D 程序乱了
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)

以上是关于maven编译时出现问题的主要内容,如果未能解决你的问题,请参考以下文章

maven编译时出现读取XXX时出错invalid LOC header (bad signature)

maven安装时出现编译错误我该如何解决这个错误[重复]

maven编译工程时出现非法字符: 65279错误

当我尝试使用最新的依赖项构建 Maven 空手道项目时出现编译错误

解决 Maven项目进行编译( mvn compile )时出现的错误

Maven Install指令构建时出现找不到符号