相关疑难解决方法(0)

m2e生命周期映射未找到

我正在尝试使用此处描述的解决方案来解决恼人的"生命周期配置未涵盖的插件执行:org.codehaus.mojo:build-helper-maven-plugin:1.7:add-source(执行:默认,阶段:生成 -来源)"当我将以下插件放在我的pom.xml上时:

<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
    <execution>
        <phase>generate-sources</phase>
        <goals><goal>add-source</goal></goals>
        <configuration>
            <sources>
                <source>src/bootstrap/java</source>
            </sources>
        </configuration>
    </execution>
</executions>
</plugin>
Run Code Online (Sandbox Code Playgroud)

但是当我运行mvn clean install时,我得到了这个:

原因:在存储库中找不到POM'org.eclipse.m2e:lifecycle-mapping':无法从任何存储库下载工件

有没有人知道如何让m2e和maven开心?

maven-2 m2eclipse maven-plugin maven m2e

58
推荐指数
5
解决办法
10万
查看次数

Eclipselink 2.5使用Maven生成元模型

我想知道如何使用Maven和Eclipselink 2.5生成静态元模型.通过在运行Eclipselink 2.4时将这些行添加到pom.xml,它运行良好.

// Generate meta model for eclipselink 2.4 (does not work for 2.5)
    <plugin>
                    <groupId>org.bsc.maven</groupId>
                    <artifactId>maven-processor-plugin</artifactId>
                    <version>1.3.1</version>
                    <executions>
                        <execution>
                            <id>process</id>
                            <goals>
                                <goal>process</goal>
                            </goals>
                            <phase>generate-sources</phase>
                            <configuration>
                                <compilerArguments>-Aeclipselink.persistencexml=src/main/resources/META-INF/persistence.xml</compilerArguments>
                                <processors>
                                    <processor>org.eclipse.persistence.internal.jpa.modelgen.CanonicalModelProcessor</processor>
                                </processors>
                                <outputDirectory>${project.build.directory}/generated-sources/meta-model</outputDirectory>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
Run Code Online (Sandbox Code Playgroud)

但似乎自2.4以来出现了一些变化,因为我得到了以下错误:

[INFO] javac option: -proc:only
[INFO] javac option: -Aeclipselink.persistencexml=src/main/resources/META-INF/persistence.xml
[INFO] javac option: -processor
[INFO] javac option: org.eclipse.persistence.internal.jpa.modelgen.CanonicalModelProcessor
[INFO] javac option: -s
[INFO] javac option: /home/asdf/target/generated-sources/meta-model
[INFO] diagnostic error: Annotation processor 'org.eclipse.persistence.internal.jpa.modelgen.CanonicalModelProcessor' not found
[INFO] diagnostic warning: Annotation processing without compilation requested but no processors …
Run Code Online (Sandbox Code Playgroud)

jpa eclipselink maven

17
推荐指数
2
解决办法
2万
查看次数

使用maven-processor-plugin生成JPA元模型文件 - 重新生成的便捷方式是什么?

我正在尝试使用maven-processor-plugin生成JPA元模型java文件,并设置我的pom.xml如下所示.

<plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
            <source>1.8</source>
            <target>1.8</target>
            <compilerArgument>-proc:none</compilerArgument>
        </configuration>
    </plugin>
    <plugin>
        <groupId>org.bsc.maven</groupId>
        <artifactId>maven-processor-plugin</artifactId>
        <executions>
            <execution>
                <id>process</id>
                <goals>
                    <goal>process</goal>
                </goals>
                <phase>generate-sources</phase>
                <configuration>
                    <!-- source output directory -->
                    <outputDirectory>${basedir}/src/main/java</outputDirectory>
                    <processors>
                        <processor>org.hibernate.jpamodelgen.JPAMetaModelEntityProcessor</processor>
                    </processors>
                    <overwrite>true</overwrite>
                </configuration>
            </execution>
        </executions>
    </plugin>
Run Code Online (Sandbox Code Playgroud)

实际上,我想生成元模型文件(Entity_.java)到相应实体(Entity.java)的相同包中.因此,我在插件中设置outputDirectory为

<outputDirectory>${basedir}/src/main/java</outputDirectory>
Run Code Online (Sandbox Code Playgroud)

第一次运行是好的,但是从以后执行元模型java文件重新生成时,插件总是会出现关于文件复制的错误.

我的问题是 - 有没有办法配置插件,以便它可以在重新生成过程中覆盖现有的文件?

事实上,要解决

  1. 我必须在重新生成之前删除所有生成的文件.
  2. 我可以将outputDirectory指向/ target中的不同文件夹,每次Maven运行时此位置都将保持干净,但这会导致在重新生成后手动将生成的元模型文件复制到源文件夹以进行更新.

这两个都非常不方便,我希望你们能给我一个合适的解决方案.

hibernate jpa maven

7
推荐指数
3
解决办法
8679
查看次数

如何在Maven中组织源生成?

我有一个Maven插件,它为我的java项目生成源代码并将它们放入' target/generated-sources '文件夹中.我需要在编译时使用这些源代码.我想在修改它的时候将它们放在我的项目中,已经生成了.当然,我想把它们放在' src '文件夹下的正确文件夹中,而不是' target/generated-sources '.我如何使用Maven组织这个?

换句话说,我希望能够:

  1. 通过运行我的特殊源生成插件的一些目标来生成我需要的源代码(已经完成,源代码包含我指定的包)

  2. 将这些生成的源移动到标准Maven布局的' src/main/java/... '文件夹中.

  3. 从' target/generated-sources '文件夹中删除它们,因为否则mvn clean install命令会引发错误,说明我有"重复的类".实际上,如果我只是将生成的源从目标复制到src - 我必须使用相同名称和包的类,尽管其中一个位于目标文件夹中.

哪个Maven插件可以用这个?我想这是一个典型的任务.

java maven-plugin maven

4
推荐指数
1
解决办法
1305
查看次数

标签 统计

maven ×4

jpa ×2

maven-plugin ×2

eclipselink ×1

hibernate ×1

java ×1

m2e ×1

m2eclipse ×1

maven-2 ×1