2010-03-31 14 views
17

Je travaille sur un + projet basé qui a la structure de répertoire suivant:Can Gradle gère une structure de répertoire de construction qui ne respecte pas les conventions par défaut?

projectRoot/src 
projectRoot/classes 
projectRoot/conf 
projectRoot/webservices 

cela fonctionne parfaitement bien dans mais je suis à la recherche de migrer vers .

Existe-t-il un moyen de définir une structure de répertoire non-maven dans Gradle ou devrais-je chercher à mavenize?

Répondre

30

Il est très facile avec Gradle de s'adapter à n'importe quelle structure de répertoire. Voir la section Working with source sets du Guide de l'utilisateur de Gradle.

8

Exemple avec la structure de répertoire de projet non standard (mise en page personnalisée):

sourceSets { 
    main { 
     java { 
      srcDir 'sources/main/java' 
     } 
     output.classesDir = "$workDir/client/program" 
    } 
    test { 
     java { 
      srcDir 'sources/test/java' 
     } 
     output.classesDir = "$workDir/client/tests" 
     output.resourcesDir = "$workDir/client/tests" 
    } 
} 
1

Essayez:

sourceSets { 
    main { 
     java { 
      srcDirs = ['src/java'] 
     } 
     resources { 
      srcDirs = ['src/resources'] 
     } 
    } 
} 

ou

sourceSets { 
    main.java.srcDirs += 'src/java' 
    main.resources.srcDirs += 'src/resources' 
}