2

Maven を使用して、それぞれに異なる dll (32 ビットと 64 ビット) を持つ 2 つの個別の jar を作成しようとしていますが、dll は jar のルートで同じ名前になる必要があります。別の jar を問題なく作成できますが、ファイルの名前を変更する方法が見つからないようです。

同じ名前のファイルを別のディレクトリに配置し、それらをターゲットにコピーしてからjarを構築しようとしました。しかし、それらを別々のディレクトリに配置しているため、jar のルートにはなりません。

アプレットを作成し、Java Web Start を使用して展開しているため、これが必要です。dll は、異なるアーキテクチャをターゲットにするために個別の jar にある必要があり、JNLP 仕様に従って jar のルートにある必要があります。

開始位置 :

\src
     \main
        \resources
            rxtxSerial32.dll
            rxtxSerial64.dll

希望終了位置 :

native-dll-32.jar
    rxtxSerial.dll (the 32 bit version)

native-dll-64.jar
    rxtxSerial.dll  (the 64 bit version)

別のjarを取得するには、maven-jar-pluginを使用しています

          <plugin>
            <artifactId>maven-jar-plugin</artifactId>
            <executions>
              <execution>
                <id>native-dll-64</id>
                <goals><goal>jar</goal></goals>
                <phase>package</phase>
                <configuration>
                  <classifier>native-dll-64</classifier>
                  <includes>
                    <include>**/rxtxSerial64.dll</include>
                  </includes>
                </configuration>
              </execution>
            </executions>
        </plugin>

どんな助けでも大歓迎です。多分私は完全に新しいスタートが必要ですか?

4

1 に答える 1

1

最終的に 2 つの jar ファイルが必要になるため、これらのプロジェクトを 2 つ作成することをお勧めします。プロジェクトがビルドで共通の機能を共有している場合は、それを親 POM ファイルに入れることができます。

1 つのプロジェクトから複数の jar ファイルを生成すると、ほとんどの場合、問題が発生します。私は通常、それを回避しようとします。1 つのプロジェクトと 1 つのアーティファクト、このルールに従うことで、私は何度か助けられました。

于 2013-03-20T13:53:16.317 に答える