问题标签 [maven-compiler-plugin]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
5214 浏览

maven - Eclipse 使用生成的类报告代码的编译错误

我有一个使用 JPA 2.0 元模型的 Maven 项目。我将 M2e 配置为在其构建生命周期中使用 maven-processor-plugin 和 build-helper-maven-plugin。结果是:在target/generated-sources/annotations中生成了JPA 2.0 Metamodel类,并且全部编译成功(我查看了生成的.war文件,生成的类都在里面)。但是,Eclipse还是报了编译错误
我的环境:JDK 1.6 更新 43 x64,Eclipse Juno SR2,M2e 1.4.0。
我的配置如下:
对于 build-helper-maven-plugin (in <build><plugins>):

对于 maven-processor-plugin (in <build><plugins>):

对于 maven-compiler-plugin (in <build><plugins>):

对于 m2e (in <build>):

实体类:

元模型类:

使用生成的元模型类的类:

我已经右键单击 > Maven > 更新项目... > 从 pom.xml 更新项目配置,但 .classpath 文件仍然不包含生成源文件夹中的任何条目。
任何人都可以给我一个提示吗?谢谢你。

0 投票
1 回答
1412 浏览

maven - 使用不同的分类器构建工件

我的 Maven 项目是一个将在 Java 6 和 Java 7 项目中使用的 jar。所以我想有不同的工件可以像这样使用:

我还希望它们一次性构建。所以配置文件可能不是要走的路。我尝试使用多个插件执行。

首先,我创建了两个单独的构建目录:

然后我尝试配置 maven-compiler-plugin 构建两次,在两个目录中:

但我无法让它工作。它永远不会编译第二次,因为源文件已经编译:

你知道我如何为这两种环境编译吗?

0 投票
1 回答
7409 浏览

maven - 修复 maven Java 堆空间错误

长话短说,我有一个 Maven 项目,如果我使用它运行良好:

但没有它我得到:

现在我想将该配置移动到 pom 文件中。我尝试了两种可能性:

这些都不起作用。

是否有另一种处理-Xmxpom 文件中的参数的方法?

0 投票
4 回答
49070 浏览

maven - Maven Pom.xml 问题

我正在尝试使用 maven 制作一个 spring mvc 项目并在 pom.xml 中出现以下错误:

CoreException:无法计算构建计划:插件 org.apache.maven.plugins:maven-compiler-plugin:2.3.2 或其依赖项之一无法解析:无法读取 org.apache.maven.plugins 的工件描述符: maven-compiler-plugin:jar:2.3.2: ArtifactResolutionException: 无法从 http://repo.maven.apache.org/maven2 传输 org.apache.maven.plugins:maven-compiler-plugin:pom:2.3.2被缓存在本地存储库中,直到中央的更新间隔过去或强制更新后才会重新尝试解析。原始错误:无法从/到中央(http://repo.maven.apache.org/maven2)传输工件 org.apache.maven.plugins:maven-compiler-plugin:pom:2.3.2:连接被拒绝:否进一步的信息http://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-compiler-plugin/2.3.2/maven-compiler-plugin-2.3.2.pom

它与代理或防火墙有关吗?我能做些什么来修复它?

0 投票
1 回答
115 浏览

maven - Java 1.4 与 maven jar 插件一起使用?

在我的一些 maven 模块(例如 myChild)中,我使用 maven-jar-plugin 创建一些额外的 jar,在此处命名为 my-plugin.jar。这个 my-plugin.jar 应该只是整个模块的一部分 - myChild.jar。

当我想在另一个 maven 模块(例如 myExternal)中使用 myChild 模块时,我添加了对 myChild 的依赖项。但是 myExternal 的编译由于以下错误而失败:method does not override or implement a method from a supertype。当我删除两个 @Override 注释时,错误数量减少了两个。似乎使用了 Java 1.4。但是父 POM 具有 maven-compiler-pluginsourcetarget1.7。更令人好奇的是,myChild 模块编译得很好。但是当其他一些使用 myChild 的模块正在编译时,就会出现上述错误。

0 投票
1 回答
1233 浏览

java - 添加源目录时发音不起作用

我用 enunciate 插件生成了 doc 并且它起作用了,我添加了一个源目录,用于将额外文件添加到类路径以进行编译(maven-compiler-plugin)。enunciate 不适用于这个。我如何解决这个问题?我收到此错误:[错误] 无法执行目标 org.codehaus.enunciate:maven-enunciate-plugin:1.27:assemble:组装发音应用程序时出现问题。APT 调用失败。请参阅http://jira.codehaus.org/browse/ENUNCIATE-771了解已经看到的情况。没有对此错误的解释。-> [帮助 1] [错误]

0 投票
1 回答
1091 浏览

java - Maven 编译器,只编译带注解的类

我在我正在处理的 Maven 2 项目中创建了一个自定义 Java 注释(下面的代码):

在 Maven 构建的一部分中,我只想编译带有此注释的类,例如:

我目前正在使用Maven 编译器插件来限制基于包结构的复杂性。我的 pom.xml 包含类似于下面的一个,将编译限制为 **com.foo.bar.stuff** 和 **com.baz.foo.more** 中的类。这是不令人满意的,因为当我在 com.xyz.bar.foo 中添加注释类时,我必须记得在 pom.xml 中定义它。

有没有办法定义 Maven 只编译已使用此注释注释的类,而不取决于它们在包层次结构中的位置?

(我正在尝试从域模型类生成一个元模型,这样我就可以指向字段和方法,而无需将名称定义为字符串常量——并在我重构时手动更改它们)

编辑:我已经在构建阶段的另一部分进行注释处理。该系统的工作原理如下:

  1. 编译指定包中的类
  2. 使用JAnnocessor从带有 @MYANNOTATION 的类构建元模型
  3. 编译其余的类

从其他类到元模型类的依赖关系会阻止一次性编译所有内容,除非我们将带注释的类移动到不同的项目并为其添加依赖关系。这是一种可能性,但会增加复杂性,因为当前的项目结构似乎形成了一个合乎逻辑的整体。

0 投票
3 回答
3062 浏览

java - java maven-compiler-plugin:3.1, javacTask: 源版本 1.7 需要目标版本 1.7

我有一个要为 Java 1.7 构建的 Java 代码。

但我收到以下错误:

下面的调试输出显示目标是 1.5:

如何在 NetBeans IDE 中解决此问题?

0 投票
1 回答
1838 浏览

java - Maven 忽略“maven-compiler-plugin”要求

我正在使用 Maven 3.0.5。我对“maven-compile-plugin”有疑问。基本上,我有 2 个项目,旧的在 Java 6 中,新的在 Java 7 下。我目前的 JAVA_HOME 很好,是:

$ echo $JAVA_HOME C:\Program Files (x86)\Java\jdk1.6.0_38

在新项目中,我将 maven-compile-plugin 与此配置一起使用:

我在 settings.xml 中声明了 JDK7 变量:

在新项目中,我还使用强制插件来检查编译的源代码是否符合 Java 7,所以在我的 POM 中,我有:

我对 Maven 的不理解是它总是使用 JAVA_HOME 定义的编译器。由于它默认为 Java 6,所以当我构建新项目时,强制插件总是失败,因为 Maven 使用 java 6:

你能帮我解决这个问题吗?

0 投票
7 回答
166941 浏览

java - 插件 org.apache.maven.plugins:maven-compiler-plugin 或其依赖项之一无法解析

我在正确配置我的 Eclipse 以使用 Maven 时遇到了一些问题。

我创建了一个新项目,这个项目是在命令行(mvn install)中使用 maven 正确构建的,但是在 Eclipse 中我收到了这个错误:

CoreException:无法获取插件执行默认编译的参数 compilerId 的值:PluginResolutionException:插件 org.apache.maven.plugins:maven-compiler-plugin:3.1 或其依赖项之一无法解析:无法收集依赖项org.apache.maven.plugins:maven-compiler-plugin:jar:3.1 (): ArtifactDescriptorException: 无法读取 org.apache.maven:maven-settings:jar:2.2.1 的工件描述符: ArtifactResolutionException: 传输 org 失败.apache.maven:maven-settings:pom:2.2.1 来自http://repo.maven.apache.org/maven2被缓存在本地存储库中,直到中央的更新间隔过去或强制更新后才会重新尝试解析。原始错误:无法将工件 org.apache.maven:maven-settings:pom:2.2.1 从/到中央传输:NullPointerException pom.xml /test line 9 Maven Project Build Lifecycle Mapping Problem

这是我的 settings.xml conf:

我选择了正确的 Maven 安装(在 Preference -> Maven -> Install 中)

我还将我的用户设置指向正确的 settings.xml (Preferences -> Maven -> User Settings)

但是我仍然在 Eclipse 中遇到了这个错误,并且在 Maven 命令行中一切正常。你有想法吗?