2017-06-28 1 views
-1

Je travaille avec Liferay 7.0 et j'ai quelques modules, comme init.hook, theme, layout ... J'ai remarqué que lorsque je change de version dans .jar pom. xml, comme dans init.hook pom.xml, la version du bundle est mise à jour. Dans MANIFEST.MF, j'ai la version de paquet 1.2.2 qui correspond à la version du projet dans mon pom.Liferay: Changer la version de l'ensemble pour les modules .war

Mais dans .war comme theme.war, ce n'est pas le cas. J'ai remarqué que je peux changer Bundle-version dans le liferay-plugin-package.properties, mais je voudrais avoir seulement 1 place pour changer la version de tous les modules (dans le parent pom).

J'ai essayé avec le maven-plugin-paquet comme ça:

<plugin> 
<groupId>org.apache.felix</groupId> 
<artifactId>maven-bundle-plugin</artifactId> 
<extensions>true</extensions> 
<configuration> 
<instructions> 
<Bundle-SymbolicName>com.myProject.layout</Bundle-SymbolicName> 
<Bundle-Name>Site web Layout</Bundle-Name> 
<Bundle-Version>1.2.3</Bundle-Version> 
</instructions> 
</configuration> 
</plugin> 

Mais cela ne fonctionne pas et je ne toujours "t ont une version Bundle dans le MANIFEST.MF, ni dans le gogoShell commande « lb ».

Comment faire cela? Thx

Répondre

1

un fichier guerre n'est pas déployé directement dans le conteneur OSGi comme un paquet, mais enveloppé pendant le processus de déploiement. Je ne rien attendre de la Le manifeste du fichier WAR doit être pertinent pour ce proce ss. Un fichier jar (et un ensemble) est un fichier avec du code Java, par exemple dans les répertoires qui correspondent au package du code. Un fichier war contient du code dans des emplacements complètement différents, il ne peut donc pas être utilisé comme un fichier jar de manière transparente. En outre, un fichier war contient un certain nombre de fichiers jar qui ne seront pas mis à la disposition du conteneur OSGi après le déploiement. Encore une autre raison pour que ce ne soit pas un paquet.