27

ProGuardを実行してjarファイルを縮小しています。必要なパラメーターの1つは、システムのランタイムjarです。これは$JAVA_HOME/lib/rt.jarSunディストリビューションではありますが、AppleのMac OS X(私の場合はv10.6(Snow Leopard))ではありません。

OS X用のrt.jarはありますか?

4

5 に答える 5

22

これはclasses.jarと呼ばれ、/ System / Library / Frameworks / JavaVM.framework/Classesの下にあります。

詳細については、こちらをご覧ください。

http://lists.apple.com/archives/java-dev/2003/Mar/msg01530.html

于 2010-05-05T20:08:47.630 に答える
12

このブログエントリでは、Proguardの構成を変更せずに問題を解決するための比較的簡単な方法について説明しています。

このエントリでは、2つのシンボリックリンクを作成して、Proguardが期待するパスに存在するrt.jarようにすることを推奨しています。jsse.jar

ディレクトリに立っ/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/libて次のコマンドを実行すると、問題が解決しました。

sudo ln -s ../../Classes/classes.jar rt.jar
sudo ln -s ../../Classes/jsse.jar .
于 2012-08-06T14:20:33.160 に答える
4

OSXの質問でJAVA_HOMEを何に設定すればよいかrt.jarという質問に、同等のものに到達する方法の説明がいくつかあります。

簡単な答えは、/usr/libexec/java_homeまたはの結果を使用して設定JAVA_HOMEし、次の場所で(rt.jarに相当するOS X)を$(/usr/libexec/java_home)見つけることです。classes.jarJAVA_HOME/bundle/Classes/classes.jar

于 2011-05-20T07:32:12.527 に答える
1

私のシステム(Mojave 10.14.3とJDK1.8)では、gradleclasses.jarキャッシュ(~/.gradle/caches/)以外には何もありません。ただし、にはがありrt.jarます/Library/Java/JavaVirtualMachines/jdk1.8.0_201.jdk/Contents/Home/jre/lib/rt.jar。私はそれをリンクし、フォルダjsse.jarからのヘンリックと同じ方法で:Contents/Home/lib

➜  lib sudo ln -s ../jre/lib/rt.jar 
➜  lib sudo ln -s ../jre/lib/jsse.jar

そしてProguardは現在機能しています。

于 2019-03-25T11:14:20.063 に答える
0

私にとっての理由は、JDK13をインストールしていたからです。JDK 1.8をインストールした後、ファイルはProGuardが予期する場所に表示されました。JDK 1.8をインストールsudo find /Library -name rt.jarした後、実行して後への正確なパスを見つけることができますrt.jar

于 2020-01-10T02:02:56.680 に答える