ProGuardを実行してjarファイルを縮小しています。必要なパラメーターの1つは、システムのランタイムjarです。これは$JAVA_HOME/lib/rt.jarSunディストリビューションではありますが、AppleのMac OS X(私の場合はv10.6(Snow Leopard))ではありません。
OS X用のrt.jarはありますか?
これはclasses.jarと呼ばれ、/ System / Library / Frameworks / JavaVM.framework/Classesの下にあります。
詳細については、こちらをご覧ください。
http://lists.apple.com/archives/java-dev/2003/Mar/msg01530.html
このブログエントリでは、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 .
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
私のシステム(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は現在機能しています。
私にとっての理由は、JDK13をインストールしていたからです。JDK 1.8をインストールした後、ファイルはProGuardが予期する場所に表示されました。JDK 1.8をインストールsudo find /Library -name rt.jarした後、実行して後への正確なパスを見つけることができますrt.jar