A mobile project can't be built?

when I build a JME3 project and complete the Android deployment option,but it tells me that"Can’t read [E:\Program Files\JME_Workapace\BasicGame${platform.home}\jre\lib\rt.jar]"
the error logs are following:

Deleting: E:\Program Files\JME_Workapace\BasicGame\build\built-jar.properties
deps-jar:
Updating property file: E:\Program Files\JME_Workapace\BasicGame\build\built-jar.properties
compile:
Copying 1 file to E:\Program Files\JME_Workapace\BasicGame\build
Copy libraries to E:\Program Files\JME_Workapace\BasicGame\dist\lib.
To run this application from the command line without Ant, try:
java -jar “E:\Program Files\JME_Workapace\BasicGame\dist\MyGame.jar”
jnlp:
ProGuard, version 4.7
Reading program directory [E:\Program Files\JME_Workapace\BasicGame\dist\lib] (filtered)
Reading program jar [E:\Program Files\JME_Workapace\BasicGame\dist\MyGame.jar]
Reading library jar [E:\Program Files\JME_Workapace\BasicGame${platform.home}\jre\lib\rt.jar]
E:\Program Files\JME_Workapace\BasicGame\nbproject\obfuscate-impl.xml:7: Can’t read [E:\Program Files\JME_Workapace\BasicGame${platform.home}\jre\lib\rt.jar] (No such file or directory)

Does it work without proguard?

I’m new to the Jme,not got what do you mean ,I unselect the “obfuscate build” option, it will do work.

Well according to that error it fails when it tries to use proguard(a obfuscator)

So I think it’s worth to test if it does build successfully without it.

If it does, then the next step would be to determine why it does exactly fail,
does that file not exist? Are the access rights correctly set?

Why is platform.home not injected into that string specifically.
Usually I guess this should be replaced with the actual path.

I might be wrong but I think obfuscation never worked directly from out of the box, at least not under windows.

With beta version, I had to do what I describe here : http://hub.jmonkeyengine.org/forum/topic/facing-the-multiplayer-physics-conundrum/page/2/

Due to a re-install and clumsiness, I lost what I did there… installed release 3.0 and obfuscation is bugged… probably same problem.

When deploying to android the build is obfuscated anyway, no need to do it twice.

1 Like
@normen said: When deploying to android the build is obfuscated anyway, no need to do it twice.
yes,there is no need to add the obfuscator again,thank you ,the project is ok
@normen said: When deploying to android the build is obfuscated anyway, no need to do it twice.

Android Guide Shrink, obfuscate, and optimize your app  |  Android Studio  |  Android Developers says: “ProGuard runs only when you build your application in release mode, so you do not have to deal with obfuscated code when you build your application in debug mode. Having ProGuard run is completely optional, but highly recommended.”

So I would understand you that JME always triggers the release build. Is that correct?

@mathias4u said: Android Guide http://developer.android.com/tools/help/proguard.html says: "ProGuard runs only when you build your application in release mode, so you do not have to deal with obfuscated code when you build your application in debug mode. Having ProGuard run is completely optional, but highly recommended."

So I would understand you that JME always triggers the release build. Is that correct?

Only for deploying (build), not for running.