4

MavenAppassemblerを使用してアセンブリを作成しています。クラスパスが長すぎるため、「入力行が長すぎます」というメッセージが表示されます。ここでの提案は、ブーターWindowsプラットフォームを使用することですが、JavaServiceWrapperを使用するように制限されています。java6のワイルドカードクラスパスとjavaサービスラッパーを使用する方法はありますか?

4

7 に答える 7

2

やってみました:

<useWildcardClassPath>true</useWildcardClassPath>

これで問題は解決しましたが、すでにお持ちでない場合は、次のものを使用していることも確認する必要があります。

<repositoryLayout>flat</repositoryLayout>
于 2015-04-28T13:11:27.900 に答える
1

プラグインを作成したり、既存のプラグインを拡張したりしない限り、答えは「いいえ」のようです。これは、元の質問に対する「答え」ではありません。

于 2010-04-09T20:59:55.333 に答える
1

http://jira.codehaus.org/browse/MAPPASMにバグを報告して対処することをお勧めします。私はJSW統合を作成しましたが、もう少し作業が必要であることを知っています。

于 2010-04-12T06:44:44.710 に答える
1

リポジトリ(つまりlib)ディレクトリのディレクトリ構造をフラット化することもできます。デフォルトでは、appassemblerは、クラスパスに不要な長さを追加する可能性のある深いディレクトリ構造を保持します。

<build>
  <plugins>
    <plugin>
      <groupId>org.codehaus.mojo</groupId>
      <artifactId>appassembler-maven-plugin</artifactId>
      <version>1.3.1</version>
      <configuration>
        <programs>
          <program>
            <mainClass>com.mycompany.app.MyApp</mainClass>
            <name>runMyApp</name>
          </program>
        </programs>
        <repositoryLayout>flat</repositoryLayout>
      </configuration>
    </plugin>
  </plugins>
</build>
于 2013-06-24T15:14:43.467 に答える
1

Windowsコマンドプロンプトでは、コマンドプロンプトで使用できる文字列の最大長は8191文字です。

したがって、プロジェクトに依存関係が多すぎると、長いクラスパスが生成されます。

この状況を克服するために、maven-appassemblerはオプションを提供しました

構成セクションの下にこれらの2行を追加します

<configuration>
    <repositoryLayout>flat</repositoryLayout>
    <useWildcardClassPath>true</useWildcardClassPath>
</configuration>

これら2つのオプションのドキュメント:(ドキュメント

useWildcardClassPath

多くの依存関係がある場合があります。これは、クラスパスが非常に長くなり、長くなりすぎることを意味します(特に、Windowsベースのプラットフォームの場合)。このオプションは、このような状況で役立ちます。このオプションを有効にすると、クラスパスにはクラスパスワイルドカード(REPO / *)のみが含まれます。ただし、これはJava1.6以降およびrepositoryLayoutflatとの組み合わせでのみ機能することに注意してください。

repositoryLayout

生成されたMavenリポジトリのレイアウト。サポートされているタイプ-「デフォルト」(Maven2)| 「レガシー」(Maven1)| 「フラット」(フラットlib /スタイル)。「レガシー」スタイルは、Maven2.2.1以前で実行している場合にのみサポートされます。

于 2018-10-01T06:01:18.133 に答える
0

ロングショットとして...

JSWを使用したことがない場合は、 http://maven.apache.org/plugins/maven-assembly-plugin/source-repository.htmlのコードに基づいて独自のアセンブリプラグインを作成し、代わりに使用することができます。

于 2010-04-01T12:03:23.883 に答える
0

ここでJIRAの問題を提出しました:

http://jira.codehaus.org/browse/MAPPASM-203

あなたはそれに行って投票することができます。

于 2013-10-10T22:38:29.607 に答える