playgameservices / play-games-plugin-for-unity

Google Play Games plugin for Unity
Other
3.44k stars 955 forks source link

jar not found #2479

Open VirtuallyMartin opened 5 years ago

VirtuallyMartin commented 5 years ago

Hi,

I have trouble with the GooglePlayServices in an Android Unity project. On project startup I get the exception "GooglePlayServices.JavaUtilities+ToolNotFoundException: jar not found.". Sometimes it keeps spamming the exception sometime not.

GooglePlayServices.JavaUtilities+ToolNotFoundException: jar not found. at GooglePlayServices.ResolverVer1_1.ShouldExplode (System.String aarPath) [0x00237] in Z:\tmp\tmp.mz1RZCSjez\third_party\unity\unity_jar_resolver\source\PlayServicesResolver\src\ResolverVer1_1.cs:1513 at GooglePlayServices.ResolverVer1_1.LoadAarExplodeCache () [0x00038] in Z:\tmp\tmp.mz1RZCSjez\third_party\unity\unity_jar_resolver\source\PlayServicesResolver\src\ResolverVer1_1.cs:256 at GooglePlayServices.ResolverVer1_1..ctor () [0x00046] in Z:\tmp\tmp.mz1RZCSjez\third_party\unity\unity_jar_resolver\source\PlayServicesResolver\src\ResolverVer1_1.cs:220 at GooglePlayServices.PlayServicesResolver..cctor () [0x000b8] in Z:\tmp\tmp.mz1RZCSjez\third_party\unity\unity_jar_resolver\source\PlayServicesResolver\src\PlayServicesResolver.cs:624 UnityEditor.EditorAssemblies:ProcessInitializeOnLoadAttributes()

tenpn commented 5 years ago

Did you ever solve this? It looks v similar to #2501.

AlexMerzlikin commented 4 years ago

It happens when you use embedded JDK and delete the previous Unity version. JDK that is pointed by all your Unity editors and JAVA_HOME is deleted too. I changed JAVA_HOME to a new path since I had a newer Unity with Open JDK (if your newer version doesn't have Open JDK, just download it through the hub). But only this step didn't help, so here is how it is fixed.

Solution:
1. In Unity open Edit - Preferences - External Tools
2. Uncheck "Use embedded JDK", here you will see path to the deleted JDK
3. Browse "Program Files\Unity\Hub\Editor\(your new Unity version)\Editor\Data\PlaybackEngines\AndroidPlayer\Tools\OpenJDK\Windows (for me Unity even changed path automatically to a newer installed version once I pressed browse)
4. Check "Use embedded JDK", now Unity will use correct path to it
5. Copy a new path and change your JAVA_HOME to it
6. Restart the editor
ceylongamedev commented 2 years ago

Thank you for the assistance!