Project Properties missing things

Hello.

The Documentation always talks about right clicking the Project and the clicking Project Properties. But mine seem to be missing a lot of stuff, like “Libraries” or “Application”. Why is that? Where do I need to click?

Much of the documentation about the SDK is related to using the SDK with Ant based projects, wheras it looks like you are working with a Gradle based project (gradle is the better choice IMO, and most jme devs will agree). Gradle based projects are fairly new in the SDK so unfortunately the documentation is not up to date on it as much, but you will still find plenty of help with gradle here on the forums.

Most of the configuration that you are looking for in the project’s properties tab will instead be in the Gradle build script.

The build.gradle file can be found in the “Build Scripts” directory in your project (a few lines beneath the project directory that you have highlighted in your screenshot) and then that is where you can include libraries that your app depends on, as well as configure some other settings for your project.

There’s a lot of good information about Gradle if you search around for older threads asking questions on here. And if you have any trouble trying to figure out how to do something specific with gradle, feel free to ask and you will get a lot of great replies from other jme users who are even more knowledgeable about gradle than I am.

Also, just in case it is may be useful to you (since it sounds like you are likely looking for the area where you can import other libraries to your project), here is the dependencies section of a sample gradle build file so you can see what it may look like when you try to import some useful jme libraries like ParticleMonkey, Lemur, or Minie that aren’t included by default;

dependencies {
    
    implementation "org.jmonkeyengine:jme3-plugins:$jmeVer"  
    
    implementation "org.jmonkeyengine:jme3-core:$jmeVer"
    implementation "org.jmonkeyengine:jme3-desktop:$jmeVer"
    
    implementation "org.jmonkeyengine:jme3-lwjgl:$jmeVer"
    implementation "org.jmonkeyengine:jme3-effects:$jmeVer"
    implementation "org.jmonkeyengine:jme3-networking:$jmeVer"
//    implementation "org.jmonkeyengine:jme3-lwjgl3:$jmeVer"
    implementation "org.jmonkeyengine:jme3-niftygui:$jmeVer" 
    implementation "org.jmonkeyengine:jme3-terrain:$jmeVer" 
     
    implementation "org.jmonkeyengine:jme3-testdata:3.4.0-stable"
    
    implementation "com.github.stephengold:Minie:7.5.0"
    
    implementation "com.github.stephengold:SkyControl:1.0.2"
  
//    implementation "com.simsilica:lemur:1.13.0"  //currently using master branch jars in libs folder for lemur and lemur proto
//    implementation "com.simsilica:lemur-proto:1.11.0"

    implementation "com.google.guava:guava:31.0.1-jre"
    implementation "org.codehaus.groovy:groovy-all:2.4.12"
    implementation "org.slf4j:slf4j-api:1.7.25"
    
    implementation "com.googlecode.json-simple:json-simple:1.1.1"
    
    implementation "com.code-disaster.steamworks4j:steamworks4j:1.8.0"
    implementation "com.code-disaster.steamworks4j:steamworks4j-server:1.8.0"

  //  implementation "com.epagagames:particlemonkey:1.1.0"    
    
    implementation fileTree(dir: 'libs', include: ['*.jar'])  //includes compiled .jar files from local directory
     
    run {
        systemProperty "java.library.path", "libs" //where libs is a folder
    }
 
}
4 Likes

Thanks!

3 Likes