Je veux créer un projet avec des fichiers personnalisés pour quelques projets avec struct égal, par exemple chaque projet doit avoir des fichiers CSS personnalisés, exemple bootstrap.min.css dans/webapp/css, page de connexion personnalisée dans/webapp/html, et l'image du logo dans webapp/image enter image description here Comment puis-je le faire? Gradle n'a pas d'archétypes générer. Comment puis-je créer une tâche "globale"? Par exemple, lorsque j'exécute createSimpleProject dans n'importe quel répertoire, il génère ce projet personnalisé. Puis-je créer cette utilisation gradle init?gradle init projet avec struct spécifique
Répondre
Chaque répertoire est plus ou moins un projet Gradle - en particulier un répertoire vide est un projet Gradle vide. Si vous exécutez gradle tasks
dans un répertoire vide, vous obtiendrez la liste des tâches, y compris les tâches de base init
ou la tâche wrapper
.
Vous pouvez ajouter à ces tâches en créant le fichier init.gradle
dans votre répertoire gradle (sur Mac, il est ~/.gradle/gradle.init
, pour d'autres plates-formes voir here). L'ajout d'une tâche au projet racine vous permettra de l'appeler même dans un répertoire vide. Voici le contenu du fichier échantillon init.gradle
:
gradle.rootProject {
task yourInit {
group = "Helper"
description = "Create structure for whatever project"
doLast {
println 'Create structure here'
}
}
}
Terminal d'ouverture dans le répertoire vide et en cours d'exécution gradle yourInit
entraînera bloc doLast
pour exécuter dans ce répertoire. Vous pouvez y mettre des répertoires et des fichiers de génération.