Comment utiliser Gradle Manifeste de l'API pour insérer un " MANIFESTE.MF` fichier dans la racine d'un fichier zip
Nous utilisons le manifest
attribut du plugin java pour écrire MANIFEST.MF
fichiers à notre jar
artefacts.
Nous utilisons également gradle pour construire GWT
projets et de la production, nous avons défini pour ces projets est un zip
. J'aimerais inclure un MANIFEST.MF
fichier dans la racine de ce fichier zip.
J'ai essayé à l'aide d'une tâche de type: Jar
afin que je puisse utiliser son manifest
bien, mais le problème, bien sûr, est que le fichier manifeste est écrit dans META-INF/MANIFEST.MF
, que je ne veux pas. La raison en est que nous décompressez l'archive dans l'application principale et j'ai besoin d'être en mesure de référence de la MANIFEST.MF
fichier au moment de l'exécution pour mes propres fins malveillantes.
Donc, en ce moment les archives ressemble à ceci:
/gwtdirectory/
/gwtdirectory/file1
/gwtdirectory/file2
/gwtdirectory/...
/gwtdirectory/filen
Et j'ai besoin qu'il a pris comme ceci:
/gwtdirectory/
/gwtdirectory/MANIFEST.MF
/gwtdirectory/file1
/gwtdirectory/file2
/gwtdirectory/...
/gwtdirectory/filen
J'ai déjà réussi à eu à le faire ressembler à:
/gwtdirectory/
/gwtdirectory/META-INF/MANIFEST.MF
/gwtdirectory/file1
/gwtdirectory/file2
/gwtdirectory/...
/gwtdirectory/filen
À travers une définition comme:
task pack(type: Jar){
manifest {
attributes(...)
}
extension = 'zip'
from gwt.destinationDir
}
La writeTo
méthode semble puissant prometteur, sauf que je ne peux pas trouver une implémentation de cette interface que je peux l'utiliser et je vais essayer d'éviter d'écrire mon propre.
Pensées?
Jar
tâche a getManifest()
qui renvoie le Manifest
mise en œuvre. Donc, je suppose que vous devriez être en mesure de faire pack(type:Jar){ manifest.writeTo(...) }
.OriginalL'auteur Tim Visher | 2012-01-23
Vous devez vous connecter pour publier un commentaire.
À la recherche à la Jar tâche, il ne ressemble pas à l'emplacement du fichier manifeste est configurable.
Vous souhaiterez peut-être utiliser gradle propre DefaultManifest mise en œuvre pour créer un manifeste et ensuite inclure ce fichier avec
from
dans votre fichier zip.Vous pouvez essayer ceci:
OriginalL'auteur c_maker
Je pense qu'il est exactement ce que vous cherchez à la fin de ce chapitre de Gradle manuel.
OriginalL'auteur rodion