2017-09-20 12 views
0

私はいくつかの機能を追加したばかりのmavenプロジェクトを持っているので、ローカルjar依存関係を追加する必要がありました。このjarファイルをGithubのプロジェクトのlibフォルダに追加しました。プロジェクトをGithubからダウンロードする人はmaven install:install-fileコマンドを使用せずにそのjarをm2ディレクトリにインストールできます。コマンドラインを通して。 POMファイルにはすでに依存関係がありますが、mvn installを使用してスナップショットを構築するときにjarファイルをプログラムでインストールする方法が必要です。コマンドラインを使用せずにmavenリポジトリにローカルjarファイルをインストールする

思考?

+0

githubプロジェクトへのリンクを追加することができますか? – larsgrefer

+0

会社のプライベートではありません – Jriz908

+0

なぜMavenリポジトリからjar依存関係が利用できないのですか? – larsgrefer

答えて

0

オプション0:

は、パブリックまたはのcomany全体のMavenリポジトリにjarファイルを展開します。このjarファイルを生成するプロジェクトもgitの(ハブ)のプロジェクトである場合は、1 Jitpack

オプションのようなサービスを使用することを検討してください:

醜いが、仕事ができます。

<dependency> 
    <groupId>com.bar</groupId> 
    <artifactId>foo</artifactId> 
    <version>42</version> 
    <scope>system</scope> 
    <systemPath>${project.basedir}/lib/foo-42.jar</systemPath> 
</dependency> 

オプション2:

さらにもっと醜いが、より良い仕事ができます。

<build> 
    <plugins> 
     <plugin> 
      <artifactId>maven-install-plugin</artifactId> 
      <executions> 
       <execution> 
        <id>install-foo</id> 
        <goals> 
         <goal>install-file</goal> 
        </goals> 
        <phase>generate-sources</phase> 
        <configuration> 
         <groupId>com.bar</groupId> 
         <artifactId>foo</artifactId> 
         <version>42</version> 
         <file>${project.basedir}/lib/foo-42.jar</file> 
        </configuration> 
       </execution> 
      </executions> 
     </plugin> 
    </plugins> 
</build> 
+0

チップをありがとうございます。私はこれを試して、スナップショットを構築することができました。それは正しい方向への一歩です。しかし、私が追加した新しいjarを参照するコードの部分に到達すると、スナップショットを実行しようとするとjava.lang.NoClassDefFoundErrorが発生します。 – Jriz908

+0

オプション2はどうですか? – larsgrefer

+0

オプション2も機能しませんでした。私は明日これを調べて、その瓶が会社のレポに追加できるかどうかを見ていきます。お手伝いありがとう。 – Jriz908

関連する問題