build.gradle 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. buildscript {
  2. repositories {
  3. mavenCentral()
  4. gradlePluginPortal()
  5. mavenLocal()
  6. google()
  7. maven { url = 'https://central.sonatype.com/repository/maven-snapshots/' }
  8. }
  9. dependencies {
  10. }
  11. }
  12. allprojects {
  13. apply plugin: 'eclipse'
  14. apply plugin: 'idea'
  15. // This allows you to "Build and run using IntelliJ IDEA", an option in IDEA's Settings.
  16. idea {
  17. module {
  18. outputDir = file('build/classes/java/main')
  19. testOutputDir = file('build/classes/java/test')
  20. }
  21. }
  22. }
  23. configure(subprojects) {
  24. apply plugin: 'java-library'
  25. java.sourceCompatibility = 21
  26. // From https://lyze.dev/2021/04/29/libGDX-Internal-Assets-List/
  27. // The article can be helpful when using assets.txt in your project.
  28. tasks.register('generateAssetList') {
  29. inputs.dir("${project.rootDir}/assets/")
  30. // projectFolder/assets
  31. File assetsFolder = new File("${project.rootDir}/assets/")
  32. // projectFolder/assets/assets.txt
  33. File assetsFile = new File(assetsFolder, "assets.txt")
  34. // delete that file in case we've already created it
  35. assetsFile.delete()
  36. // iterate through all files inside that folder
  37. // convert it to a relative path
  38. // and append it to the file assets.txt
  39. fileTree(assetsFolder).collect { assetsFolder.relativePath(it) }.sort().each {
  40. assetsFile.append(it + "\n")
  41. }
  42. }
  43. processResources.dependsOn 'generateAssetList'
  44. compileJava {
  45. options.incremental = true
  46. }
  47. }
  48. subprojects {
  49. version = "$projectVersion"
  50. ext.appName = 'Smog'
  51. repositories {
  52. mavenCentral()
  53. // You may want to remove the following line if you have errors downloading dependencies.
  54. mavenLocal()
  55. maven { url = 'https://central.sonatype.com/repository/maven-snapshots/' }
  56. maven { url = 'https://jitpack.io' }
  57. }
  58. }
  59. eclipse.project.name = 'Smog' + '-parent'