javaアプリケーションをmavenに移行しようとしています。これまでにjar
のファイルとして提供されていたいくつかの依存関係があります。これらの依存関係の1つが、Mavenのリポジトリから入手可能である、jung2
です:mvnrepository.comMaven:pom型の依存関係をインポートするには?
私は提供すべてのモジュールを必要と私はすべての対応jar
のファイルがダウンロードされるというのが私のpom.xml
などで正しくこのdependecyを宣言する方法を理解していないとクラスはコンパイル時に使用できます。
これは私のpom.xml
ファイルが今のように見えるものです:
<?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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>groupId</groupId>
<artifactId>myProject</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencyManagement>
<dependencies>
<!-- https://mvnrepository.com/artifact/net.sf.jung/jung2 -->
<dependency>
<groupId>net.sf.jung</groupId>
<artifactId>jung2</artifactId>
<version>2.0.1</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
</project>
私も<scope>import</scope>
を除外しようとしたとdependencies
セクションに依存性を置きます。 mvn compile
またはmvn package
を実行すると、対応するパッケージが存在しないというエラーメッセージが表示されます。
dependency
をdependencies
に追加し、dependencyManagement
の外側に追加すると、
<dependencies>
<dependency>
<groupId>net.sf.jung</groupId>
<artifactId>jung2</artifactId>
</dependency>
バージョンが不足しているとのエラーが表示されます。しかし、私が理解する限り、これはdependencyManagement
のために必要ではありませんか?私も<version>2.0.1</version>
を追加する場合、私は、次のエラーメッセージが表示されます。
Failure to find net.sf.jung:jung2:jar:2.0.1
これは ''セクションの中にあるので、 ''を追加してその外側に追加するか、それを依存関係管理から取り除く必要があります。 http://stackoverflow.com/questions/2619598/differences-between-dependencymanagement-and-dependencies-in-maven?rq=1 –
Tunaki
@ Tunaki回答をお寄せいただき、元の投稿を編集しました。依存関係を 'dependencyManager'の外に追加することはこれまでのところうまくいきませんでした。 – yogii
はい、タイプを追加する必要があります(そして多分スコープ、わかりません)。 – Tunaki