【问题标题】:Eclipse Maven Build/Plugin IssueEclipse Maven 构建/插件问题
【发布时间】:2019-03-30 11:43:57
【问题描述】:

全新安装了 Eclipse 4.9,但无法再在 Eclipse 中构建我的 Java 项目(仍然可以从命令行构建)。

控制台输出并没有给我太多继续...只是抱怨插件...

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project myprojectcommon: Compilation failure -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project myprojectcommon: Compilation failure
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:213)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:956)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:290)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:194)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.compiler.CompilationFailureException: Compilation failure
at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:862)
at org.apache.maven.plugin.compiler.CompilerMojo.execute(CompilerMojo.java:129)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
... 20 more
[ERROR] 
[ERROR] Re-run Maven using the -X switch to enable full debug logging.

我在 OSX High Sierra 上运行 Eclipse 4.9,带有 JDK 1.8_191。 Maven 版本是 3.5.4,Eclipse 被配置为使用这个外部 Maven。 JAVA_HOME 和 M2_HOME 已设置(尽管我认为 OSX 不需要它们)。我已尝试构建现有工作区以及将项目导入新工作区。

在这里有点机智......任何帮助将不胜感激。

编辑 1:然后在 Eclipse 中使用终端,它无法识别 mvn 命令,也看不到任何系统变量,如 M2_HOME。 Eclipse 本身配置为使用我的外部 maven 安装,但我也尝试使用嵌入式。在这两种情况下,Eclipse 终端都无法识别 mvn。

【问题讨论】:

  • 您尝试过 Project clean 吗?
  • 你能发布 pom.xml 吗?
  • 你在项目上试过 + 了吗?
  • 我已经清理了项目,并且总是使用 clean flag 构建
  • aka-one:我无法发布 pom(长篇大论)。你有什么具体的要求吗?

标签: java eclipse macos maven


【解决方案1】:

尝试定位并删除.m2/repository 本地存储库。它应该可以解决问题!

【讨论】:

  • 我已经删除并撤回了几次 .m2 存储库......没有骰子。
  • 我已尝试全新安装。我什至重新安装了 Java、Maven、Eclipse,并从 git fresh 重新导入了所有文件。
  • 您可以编辑您的帖子并发布您的 POM 文件内容吗?
  • Issmeil:我无法发布 pom。您是否正在寻找特定的东西?注意:编译在 Eclipse 之外工作正常
【解决方案2】:

如果您使用的是 Java 8,请尝试在 pom.xml 中添加以下内容:

<properties>
 <maven.compiler.source>1.8</maven.compiler.source>
 <maven.compiler.target>1.8</maven.compiler.target>
</properties>

或者在插件中配置:

     <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>your maven compiler plugin version</version>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
        </configuration>
      </plugin> 

https://maven.apache.org/plugins/maven-compiler-plugin/examples/set-compiler-source-and-target.html

【讨论】:

  • 我的 pom 已经包含了上面的 配置。我尝试添加属性,但这也无济于事。
【解决方案3】:

修复: Eclipse 需要从命令行启动才能获取 PATH 和其他 Env Vars

步骤:

  1. 创建了一个名为 eclipseLauncher 的新脚本并使其可执行 (chmod 755)

    #!/bin/bash
    /Applications/eclipse/jee-2018-09/Eclipse.app/Contents/MacOS/eclipse &
    
  2. 将脚本变成应用程序:

    一个。创建一个指向启动器脚本的 AppleScript(另存为 .app 类型)……

    do shell script "open /Applications/eclipse/scripts/eclipseLauncher"
    

    b.然后可以将这个应用程序移动到 Dock 并从那里执行

注意:应用程序执行脚本而不是直接发出命令。当我只是从应用程序运行命令时,我无法在 Eclipse 启动后关闭终端窗口。只有调用脚本才能让它按我想要的方式工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-10-25
    • 2013-12-12
    • 1970-01-01
    • 2011-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多