build.gradle 3.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. ext.mainClassName = 'jme3test.TestChooser'
  2. task run(dependsOn: 'build', type:JavaExec) {
  3. mainClass = mainClassName
  4. classpath = sourceSets.main.runtimeClasspath
  5. if (System.properties['java.util.logging.config.file'] != null) {
  6. systemProperty "java.util.logging.config.file", System.properties['java.util.logging.config.file']
  7. }
  8. if( assertions == "true" ){
  9. enableAssertions = true;
  10. }
  11. }
  12. dependencies {
  13. implementation project(':jme3-core')
  14. implementation project(':jme3-desktop')
  15. implementation project(':jme3-effects')
  16. implementation project(':jme3-jbullet')
  17. implementation project(':jme3-jogg')
  18. implementation project(':jme3-lwjgl')
  19. // implementation project(':jme3-lwjgl3')
  20. implementation project(':jme3-networking')
  21. implementation project(':jme3-niftygui')
  22. implementation project(':jme3-plugins')
  23. implementation project(':jme3-plugins-json')
  24. implementation project(':jme3-plugins-json-gson')
  25. implementation project(':jme3-terrain')
  26. implementation project(':jme3-awt-dialogs')
  27. runtimeOnly project(':jme3-testdata')
  28. runtimeOnly "com.github.nifty-gui:nifty-examples:${niftyVersion}" // for the "all/intro.xml" example GUI
  29. }
  30. jar.doFirst{
  31. manifest {
  32. attributes('Manifest-Version' : '1.0',
  33. // 'Created-By' : vendor,
  34. // 'Specification-Title' : appName,
  35. // 'Specification-Version' : jmeVersion,
  36. // 'Specification-Vendor' : "jMonkeyEngine",
  37. // 'Implementation-Title' : appName,
  38. // 'Implementation-Version' : version,
  39. // 'Implementation-Vendor' : vendor,
  40. 'Main-Class' : getProperty('mainClassName'),
  41. // Add dependencies to manifest, remove version
  42. 'Class-Path' : configurations.compileClasspath.resolvedConfiguration.resolvedArtifacts.collect {
  43. 'lib/' +
  44. it.name +
  45. (it.classifier != null ? '-' + it.classifier : '') +
  46. '.' + it.extension }.join(' ')
  47. )
  48. }
  49. }
  50. task dist (dependsOn: ['build', ':jme3-android:jar', ':jme3-android-native:jar']) {
  51. doLast {
  52. // Copy all dependencies to ../dist/lib, remove versions from jar files
  53. configurations.compileClasspath.resolvedConfiguration.resolvedArtifacts.each { artifact ->
  54. copy {
  55. from artifact.file
  56. into '../dist/lib'
  57. if(artifact.classifier != null){
  58. rename { "${artifact.name}-${artifact.classifier}.${artifact.extension}" }
  59. } else{
  60. rename { "${artifact.name}.${artifact.extension}" }
  61. }
  62. }
  63. }
  64. copy {
  65. from jar.archivePath
  66. into '../dist'
  67. rename { "jMonkeyEngine3.jar" }
  68. }
  69. // Copy android packages, remove version
  70. copy {
  71. from project(':jme3-android').jar.archivePath
  72. into '../dist/opt/android'
  73. rename {project(':jme3-android').name+".jar"}
  74. }
  75. copy {
  76. from project(':jme3-android-native').jar.archivePath
  77. into '../dist/opt/android'
  78. rename {project(':jme3-android-native').name+".jar"}
  79. }
  80. }
  81. }