2017-09-18 13 views
0

eclipseで私のmavenプロジェクトに外部依存関係を提供したいと思います。したがって、私はjarファイルとそのPOM.xmlをローカルのMavenリポジトリに直接コピーしました。しかし、どういうわけか、EclipseはjarファイルのPOMが無効であると不平を言っています。ローカルリポジトリ内のjarファイルのjarのPOMが無効で、推移的な依存関係は利用できません

私のpom.xmlは、以下のようになります。

<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/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 

    <parent> 
    <groupId>com.b.t</groupId> 
    <artifactId>v-parent</artifactId> 
    <version>3.9.0</version> 
    </parent> 

    <scm> 
     <developerConnection>scm:svn:url/</developerConnection> 
    </scm> 

    <artifactId>v-p</artifactId> 
    <version>1.1.0</version> 
    <name>p</name> 
    <build> 
    <plugins> 
     <!-- Plugin required to build java classes from XSD using XJC --> 
     <plugin> 
     <groupId>org.codehaus.mojo</groupId> 
     <artifactId>jaxb2-maven-plugin</artifactId> 
     <version>1.5</version> 
     <executions> 
      <execution> 
      <id>xjc</id> 
      <goals> 
       <goal>xjc</goal> 
      </goals> 
      </execution> 
     </executions> 
     <configuration> 
      <arguments>-npa</arguments> 
      <schemaDirectory>${project.basedir}/src/main/resources</schemaDirectory> 
      <packageName>com.b.t.v.fusion.p.generated</packageName> 
      <schemaFiles>pConfig.xsd</schemaFiles> 
      <outputDirectory>${basedir}/target/generated-sources</outputDirectory> 
     </configuration> 
     </plugin> 
    </plugins> 
    <pluginManagement> 
     <plugins>  
     <!-- Plugin required to add the generated sources to the classpath --> 
     <plugin> 
      <groupId>org.codehaus.mojo</groupId> 
      <artifactId>build-helper-maven-plugin</artifactId> 
      <version>1.8</version> 
      <executions> 
      <execution> 
       <phase>generate-sources</phase> 
       <goals> 
       <goal>add-source</goal> 
       </goals> 
       <configuration> 
       <sources> 
        <source>${basedir}/target/generated-sources</source> 
       </sources> 
       </configuration> 
      </execution> 
      </executions> 
     </plugin> 
     </plugins> 
    </pluginManagement> 
    </build> 


    <dependencies> 
     <dependency> 
     <groupId>com.b.t</groupId> 
     <artifactId>v-fusioninterface</artifactId> 
     </dependency> 
     <dependency> 
     <!-- FFT --> 
     <groupId>com.github.wendykierp</groupId> 
     <artifactId>JTransforms</artifactId> 
     <version>3.1</version> 
     </dependency> 
     <dependency> 
     <!-- Reading and writing of MATLAB files --> 
     <groupId>net.sourceforge.jmatio</groupId> 
     <artifactId>jmatio</artifactId> 
     <version>1.0</version> 
     </dependency> 
    <dependency> 
     <groupId>ch.qos.logback</groupId> 
     <artifactId>logback-classic</artifactId> 
     <scope>test</scope> 
     </dependency> 
    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <scope>test</scope> 
    </dependency> 
    </dependencies> 
    <profiles> 
    <profile> 
    <id>doclint-java8-disable</id> 
    <activation> 
     <jdk>[1.8,)</jdk> 
    </activation> 

    <build> 
     <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-javadoc-plugin</artifactId> 
      <configuration> 
      <additionalparam>-Xdoclint:none</additionalparam> 
      </configuration> 
     </plugin> 
     </plugins> 
    </build> 
    </profile> 
</profiles> 
</project> 

は、私はすでに同様の記事をチェックしていると(VMARGS nとして、すべてのJDKのJREを指定する)たeclipse.iniで必要な変更を行っています。 Mavenのプロジェクトでの私の依存性は以下のようになります。

<dependency> 
      <groupId>com.b.t</groupId> 
      <artifactId>v-p</artifactId> 
      <version>1.1.0</version> 
     </dependency> 

対応のpom.xmlと同じjarファイルがのIntelliJの私の同僚のためにうまく機能していることに注意してください。

私は情報のためだけにEclipse Lunaを使用しています。また、私のEclipseで、インストールされたJREがjdk1.8.0_144であることを確認しました。

また、コマンドプロンプトでmvn clean installを使用すると、同じエラーが発生します。

誰かが何を確認すればよいでしょうか?

+0

あなたのブラウザまたは他のXML構文解析プログラムでpom.xmlファイルを開くことはできますか? –

+0

はい、私はメモ帳++で開くことができます。 – Ragini

+0

notepad ++はXML _validation_を実行しますか?これは、ファイルを表示することと同じではありません。これが何であるかわからない場合は、見つけてください。 –

答えて

1

ローカルのレポにファイルをコピーするだけでは、インストールする必要はありません。命令がここにあります:あなたのケースではhttps://maven.apache.org/guides/mini/guide-3rd-party-jars-local.html

のようなものになります:

mvn install:install-file -Dfile=<path-to-file> -DpomFile=<path-to-pomfile> 
+0

ありがとうございます。知っておいてよかった。私はそれをしましたが、残念ながら同じエラーが発生しました。 :-( – Ragini

+0

正確なエラーメッセージは何ですか? – robjwilkins

+0

「POM for com.bt:vp:jar:1.1.0は無効です。推移的な依存関係は利用できません。詳細はデバッグログを有効にしてください」 – Ragini

関連する問題