2017-01-12 18 views
0

リモートリポジトリからjarファイルを取得してローカルリポジトリに追加しようとしているmavenプロジェクトがあります。クラスを参照する代わりに追加した後、現在のプロジェクトの入力として機能するjarファイルを実行する必要があります。現在のプロジェクトを実行する前にmavenで依存関係jarを実行する方法

私は試してみましたが、ビルドに問題はありませんが、依然として依存関係を実行するためのトリガーではありません。

私の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> 
    <groupId>secmaven</groupId> 
    <artifactId>secmaven</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <name>secmaven</name> 
    <description>secmaven</description> 

<build> 
<pluginManagement> 
<plugins> 
<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-dependency-plugin</artifactId> 
    <version>2.3</version> 
    <executions> 
     <execution> 
     <goals> 
      <goal>properties</goal> 
     </goals> 
     </execution> 
    </executions> 
</plugin> 

<plugin> 
    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>exec-maven-plugin</artifactId> 
    <version>1.2</version> 

    <executions> 
     <execution> 
      <id>exec-one</id> 
      <phase>verify</phase> 
      <configuration> 
       <includeProjectDependencies>false</includeProjectDependencies> 
       <includePluginDependencies>true</includePluginDependencies> 
       <executableDependency> 
        <groupId>parent</groupId> 
        <artifactId>parent</artifactId> 
       </executableDependency> 

       <!-- Look up the main class from the manifest inside your dependency's JAR --> 
       <mainClass>mainclass</mainClass> 
       <arguments> 
       </arguments> 
      </configuration> 
      <goals> 
       <goal>java</goal> 
      </goals> 
     </execution> 
    </executions> 
     <dependencies> 
     <dependency> 
      <groupId>parent</groupId> 
      <artifactId>parent</artifactId> 
      <version>0.0.1-SNAPSHOT</version> 
      <scope>system</scope> 
      <systemPath>C:\....\parent.jar</systemPath> 
     </dependency> 
     </dependencies> 
</plugin>  
</plugins> 
</pluginManagement> 
</build> 
</project> 
+0

pomの依存関係として追加しましたか? – pringi

+0

はい私は追加しました、plzは私の下のpomをチェックします – Jech

+0

あなたは何をしたいかよく説明できますか? – pringi

答えて

0

あなたはそのためにMavenのアグリゲータープロジェクトの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 
         https://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 

    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>my-parent</artifactId> 
    <version>2.0</version> 
    <packaging>pom</packaging> 

    <modules> 
    <module>proj1</module> 
    <module>proj2</module> 
    </modules> 
</project> 

PROJ1は常にproj2前に実行されますこの方法です。

私はこれがあなたが望むものだと思います。

詳細については、https://maven.apache.org/pom.html#Aggregationを参照してください。

+0

ここで言及している「my-parent」アーティファクトは何ですか?上記の例は、私のproj2の内容ですか? – Jech

+0

時間がなくなり次第、誰かが私にこのことをお勧めします – Jech

+0

あなたは何でもしたいですか?あなたのproj2 pom.xmlは proj2で参照されます(proj2はproj2 pomを持つディレクトリの名前です)。より良い概念を理解するには、mavenのドキュメントを参照してください。 – pringi

関連する問題