0

RAD7.5用のMaven2eclipse-pluginを使用してeclipse-projectファイルを生成しようとしています。EARの.projectファイルの依存関係を除いて、すべてが順調に進んでいます。

クリーンなMavenプロジェクトでmVneclipse:eclipseを実行すると、次のようなEARが思い浮かびます。

<projectDescription>
  <name>MyEAR</name>
  <comment>The .project file of MyEAR</comment>
  <projects/>
  <buildSpec>
    <buildCommand>
      <name>org.eclipse.wst.common.project.facet.core.builder</name>
    </buildCommand>
    <buildCommand>
      <name>org.eclipse.wst.validation.validationbuilder</name>
    </buildCommand>
    <buildCommand>
      <name>org.eclipse.jdt.core.javabuilder</name>
    </buildCommand>
    <buildCommand>
      <name>com.ibm.etools.validation.validationbuilder</name>
    </buildCommand>
    <buildCommand>
      <name>com.ibm.sse.model.structuredbuilder</name>
    </buildCommand>
  </buildSpec>
  <natures>
    <nature>org.eclipse.jdt.core.javanature</nature>
    <nature>org.eclipse.wst.common.project.facet.core.nature</nature>
    <nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
    <nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
  </natures>
</projectDescription>

しかし、私はこのようなもので出てきたいです:

<projectDescription>
  <name>MyEAR</name>
  <comment>The .project file of MyEAR</comment>
    <projects>
        <project>MyProjectConnector</project>
        <project>MYProjectEJB</project>
        <project>MyProjectDependents</project>
        <project>MyProjectLOG</project>
    </projects>
...
</projectDescription>

RAD7.5は、依存プロジェクトが<プロジェクト>にリストされていない限り、プロジェクト構造を理解しません。しかし、Eclipseプラグインを使用してそれを行うにはどうすればよいですか?pomのどこに依存プロジェクトをリストするので、それらは.project-fileに<projects>として表示されますか?

編集>>これが私のpom-fileのmaven-eclipse-plugin設定です

<plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-eclipse-plugin</artifactId>
                <version>2.6</version>
                <configuration>
                    <downloadSources>true</downloadSources>
                    <downloadJavadocs>false</downloadJavadocs>
                    <wtpversion>1.5</wtpversion>
                    <packaging>ear</packaging>
                </configuration>
            </plugin>
        </plugins>
        <finalName>${project.artifactId}-${project.version}-r${buildNumber}</finalName>
</build>

<

EDIT2:プロジェクトが正常にビルドされることを追加する必要があります。つまり、mvn clean installは正常に機能するため、基本的に問題はEclipseプラグインの構成にあります。

EDIT3:mavenプロジェクトは次の方法で構築されます。

MyEAR-reactor-build
|-- pom.xml
|-- MyEAR
|   |-- pom.xml
|-- MYProjectEJB
|   |-- pom.xml
`-- . . .

すべての助けを大いに感謝します!!! (ここまで読んでくれてありがとう:)

4

3 に答える 3

1

モジュールと依存プロジェクトをEARのPOMの依存関係として宣言しましたか?

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

    <modelVersion>4.0.0</modelVersion>
    <packaging>ear</packaging>
    <groupId>so.com</groupId>
    <artifactId>MyEAR</artifactId>
    <version>1.0-SNAPSHOT</version>

    <dependencies>
        <dependency>
            <groupId>so.com</groupId>
            <artifactId>MYProjectEJB</artifactId>
            <scope>runtime</scope>
            <type>ejb</type>
        </dependency>
        . . .
    </dependencies>

    . . .
于 2011-09-23T15:08:26.493 に答える
1

モジュールreactorビルドを作成する必要があるかもしれません-

MyEAR-reactor-build
|-- pom.xml
|-- MyEAR
|   |-- pom.xml
|-- MYProjectEJB
|   |-- pom.xml
`-- . . .

原子炉ビルドPOMは次のようになります-

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>so.com</groupId>
    <version>1.0-SNAPSHOT</version>
    <artifactId>MyEAR-reactor-build</artifactId>
    <packaging>pom</packaging>
    . . .
    <modules>
        <module>MyEAR</module>
        <module>MYProjectEJB</module>
        . . .
    </modules>
</project>
于 2011-09-26T20:13:01.560 に答える
0

ああ...みんな助けてくれてありがとう。問題は、pom階層の上位にあることが判明し、別の開発者が次の要素を使用してeclipse-pluginを導入しました。

<useProjectReferences>false</useProjectReferences>

何らかの理由で、私のpomでこれをtrueに設定しても、親の設定は上書きされませんでした。Eclipseプラグインのバグ、おそらく?とにかく、これを親pomでtrueに設定した後、すべてうまくいきました。みんな助けてくれてありがとう!

于 2011-10-07T11:39:41.823 に答える