問題タブ [jarjar]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
6338 参照

java - コマンドラインから jarjar を使用するには?

コマンドラインから jarjar を使用して単純な Scala プログラムを scala ランタイム ライブラリと組み合わせるのに問題があります。

jarjar は依存関係を正しく検出します。

ただし、それらを組み合わせても機能しません。

私が得る jar ファイルはまだ scala-library.jar に依存しています。CLASSPATH 変数を追加するかどうかは関係ありません。私の rules.jjl ファイルは次のようになります。

何をすべきか?

0 投票する
1 に答える
2169 参照

java - 依存関係のある jar の縮小

私はa.jar、b.jar、c.jar、d.jarとしてたくさんのjarを持っています。a.jar は残りの jar を使用しています。私は a.java で Test.java を使用しており、残りの jar は a.java で使用されています。

必要なクラスだけを含む小さな瓶を作りたいです。実際、jarjar ツールに気付きましたが、そのドキュメントは光沢がありません。

ちなみにmavenは使ってません。

何か助けはありますか?

ありがとう

0 投票する
3 に答える
3783 参照

maven - アーティファクトを使用しても推移的な依存関係がプルされない場合、MavenでJarJar'dアーティファクトを作成する方法は?

私は現在、Maven でビルドされ、jar として配布されている Java テスト ライブラリを持っています。私のプロジェクトは非常に一般的なライブラリ (Objectweb ASM) に依存しており、互換性のない以前のバージョンの ASM が既にクラスパスにあるという問題が発生しました。したがって、jarjar-maven-pluginを使用して jar を作成し、別のバージョンの ASM と競合しないように ASM を内部的に再パッケージ化しました。

これは正常に実行され、私のライブラリは依存関係として問題なく取り込めます。

ただし、私のプロジェクトには ASM に対するコンパイル スコープの依存関係があるため、クライアント プロジェクトが私のライブラリを追加するたびに、推移的な依存関係もすべて取り込まれます。したがって、仮に、彼らが特定のバージョンの ASM を使用していて、私が依存しているバージョンもクラスパスに追加した場合、未定義の動作が発生します。この状況を回避し、Maven が推移的な依存関係を不必要かつ潜在的に危険にさらすことなく、クライアントが JarJar'd アーティファクトに依存できるようにしたいと考えています。

ユーザーが推移的な依存関係を取得せずに依存できる JarJar'd アーティファクトを作成するにはどうすればよいですか?

0 投票する
3 に答える
2947 参照

java - Android:javaxコアクラスを参照する依存関係の包含/再パック中にエラーが発生しました

ビルドツールとしてMavenを使用してAndroidアプリに取り組んでいます。私はevertyhingを正しく設定することができました(mavenの依存関係はapkなどにエクスポートされます)が、私を夢中にさせている問題が1つ残っています。

次のように定義されたsimpleframeworkのxmlパーサーへの依存関係をPOMファイルに含めたいと思います。

プロジェクトを発行mvn installすると、次のエラーが発生します(切り捨てられます)。

これらのjavaxクラスを参照する単純なxmlパーサーのエラーの結果はわかっていますが、まだ解決策が見つかりません(--core-libraryフラグを設定しても意味がありません)。

現在、maven-jarjar-plugingを使用して依存関係を再パックしようとしていますが、これも機能しないようです。

誰かがこれで私を助けることができますか?よろしくお願いします!

0 投票する
1 に答える
553 参照

java - Maven JarJar Plugin:「提供された」スコープを除外しますか?

Maven JarJar プラグインで「提供された」スコープ内のアイテムを除外する方法はありますか? これは非常に簡単に思えます...何かが提供されている場合、なぜそれをメガジャーに含めたいのでしょうか?

0 投票する
3 に答える
6313 参照

ant - すべてのjarに対して手動で指定せずに、zipfileset src属性を使用するにはどうすればよいですか?

私は現在これを持っています:

問題は、srcパラメータを考慮する必要があるため、各jarを手動で指定する必要があることです。私はこのようなものが欲しいです:

そして、それらのコンテンツを抽出して、結果のアーカイブに含めます。これは可能ですか?

0 投票する
1 に答える
1078 参照

maven - JarJar-JarJar /埋め込みエラーができません:ZIPファイルには少なくとも1つのエントリが必要です

現在、MavenプロジェクトでJarJarで最も奇妙なエラーが発生しています。次のエラーが発生し続けます。

私のビルドファイルを一目見れば、ZIPに複数のファイルが含まれていることは非常に明白です。

私は何が間違っているのですか?ビルドからの完全なログはここにあります。また、私のプロジェクトのツリーはここにあります。誰かが問題がどこにあるかを見ることができますか?

0 投票する
2 に答える
2485 参照

java - jarjar を使用してデフォルト パッケージから .class ファイルを再パッケージ化する方法は?

jar 内の .class ファイルをデフォルト パッケージから別の名前付きパッケージに移動して、インポートして使用できるようにすることはできますか?

ここで他の質問を参照した後、jarjar がまさに探しているものであると思いますが、どのように使用できるかわかりません。

私の質問は、jarjar を使用して .class ファイルをデフォルト パッケージから別の名前付きパッケージに再パッケージ化する方法です。

編集:何かを明確にしたい-再パッケージ化するjarのソースがないため、コードを再コンパイルする方法がわかりません。難読化と反射は問題外です。

EDIT2:jarjarを使用するのは非常に簡単に見えます:) java -jar jarjar.jar process rules.rules in.jar out.jar

rules.rules は次のようになります。

問題が解決しました!

0 投票する
1 に答える
2696 参照

ant - JarJarLinksで空のディレクトリを除外する

Jar Jar LinksのAntタスクを使用して、サードパーティのjarファイル(objenesis)のクラスを配布可能なjarファイル(example.jar)に埋め込みます。Jar Jarは、クラスを元のパッケージ(org.objenesis)から私の選択したパッケージの1つに変換します。

動作しますが、配布可能なjarに空のディレクトリが残ります。

簡略化されたbuild.xmlは次のとおりです。

example.jarのコンテンツのサンプルには、(予想どおり)次のものが含まれます。

しかし、これらの空のディレクトリ(望ましくない):

私の質問:これらの空のディレクトリを除外するにはどうすればよいですか?

「zap」オプション(ドキュメントに記載)を試しましたが、うまくいきませんでした。

0 投票する
1 に答える
581 参照

gson - GSON + HTC Desire:競合。考えられる解決策jarjar.jarはエラーを引き起こします

AndroidアプリでGSONを使用しようとしていますが、クラッシュが発生します。いくつか読んだ後、HTCにはGSONが含まれているようで、それが競合を引き起こしています。提案された解決策の1つは、jarjar.jarを使用してgsonクラスの名前を変更し、競合を解決することでした。これを実行しようとすると、次のエラーが発生します。

構文エラー:1行目のエラー:[{\ rtf1 \ ansi \ ansicpg1252 \ cocoartf1038 \ cocoasubrtf360]

私が実行しているコマンド:

java-jarjarjar-1.2.jarプロセスrules.txtgson-2.1.jarmyjson-2.1.jar

rules.txt:ルールcom.google.gson。**com.google.myjson。@1

何か案は?