Adobe Content Package Maven Plugin adobe-content-package-maven-plugin
Använd pluginen Adobe Content Package Maven för att integrera paketets driftsättnings- och hanteringsuppgifter i dina Maven-projekt.
Distributionen av de konstruerade paketen till AEM utförs av plugin-programmet Maven för innehållspaket för Adobe och möjliggör automatisering av åtgärder som normalt utförs med AEM Package Manager:
- Skapa nya paket från filer i filsystemet.
- Installera och avinstallera paket på AEM.
- Bygg paket som redan har definierats på AEM.
- Hämta en lista med paket som är installerade på AEM.
- Ta bort ett paket från AEM.
I det här dokumentet beskrivs hur du använder Maven för att hantera dessa uppgifter. Men det är också viktigt att förstå hur AEM projekt och deras paket är strukturerade.
Paket och AEM projektstruktur aem-project-structure
AEM as a Cloud Service följer de senaste metoderna för pakethantering och projektstruktur som implementerats av den senaste AEM Project Archetype.
Hämta innehållspaketet Maven Plugin obtaining-the-content-package-maven-plugin
Plugin-programmet är tillgängligt från Maven Central Repository.
Innehållspaket Maven Plugin - mål och parametrar
Om du vill använda plugin-programmet Content Package Maven lägger du till följande plugin-element i build-elementet i din POM-fil:
<plugin>
<groupId>com.day.jcr.vault</groupId>
<artifactId>content-package-maven-plugin</artifactId>
<version>1.0.4</version>
<configuration>
<!-- parameters and values common to all goals, as required -->
</configuration>
</plugin>
Om du vill att Maven ska kunna hämta plugin-programmet använder du profilen som finns i avsnittet Hämtning av innehållspaketets plugin på den här sidan.
Mål för Innehållspaketet Maven Plugin goals-of-the-content-package-maven-plugin
Mål- och målparametrarna som finns i innehållspaketets plugin-program beskrivs i följande avsnitt. Parametrar som beskrivs i avsnittet Vanliga parametrar kan användas för de flesta målen. Parametrar som gäller för ett mål beskrivs i avsnittet för det målet.
Plugin-prefix plugin-prefix
Insticksprefixet är content-package
. Använd det här prefixet för att köra ett mål från kommandoraden, som i följande exempel:
mvn content-package:build
Parameterprefix parameter-prefix
Om inget annat anges använder målen och parametrarna för plugin-programmet prefixet vault
, som i följande exempel:
mvn content-package:install -Dvault.targetURL="https://192.168.1.100:4502/crx/packmgr/service.jsp"
Proxies proxies
Mål där proxies används för AEM använder den första giltiga proxykonfigurationen som finns i inställningarna för Maven. Om ingen proxykonfiguration hittas används ingen proxy. Se parametern useProxy
i avsnittet Vanliga parametrar.
Gemensamma parametrar common-parameters
Parametrarna i följande tabell är gemensamma för alla mål utom när de anges i kolumnen Mål .
failOnError
boolean
false
true
gör att bygget misslyckas när ett fel inträffar. Värdet false
gör att felet ignoreras.package
name
String
build
: Ja, install
: Nej, rm
: Jabuild
: Inget standardvärde, install
: Värdet för egenskapen artifactId
i Maven-projektetls
password
String
admin
package
serverId
String
package
targetURL
String
http://localhost:4502/crx/packmgr/service.jsp
package
timeout
int
5
package
useProxy
boolean
true
true
gör att Maven använder den första aktiva proxykonfigurationen som hittas för proxybegäranden till Package Manager.package
userId
String
admin
package
verbose
boolean
false
package
bygg build
Skapar ett innehållspaket som redan har definierats på en AEM.
Parametrar parameters
Alla parametrar för byggmålet beskrivs i avsnittet Vanliga parametrar.
installera install
Installerar ett paket i databasen. För att detta mål ska kunna uppnås krävs inte något Maven-projekt. Målet är bundet till install
-fasen av Maven-byggets livscykel.
Parametrar parameters-1
Förutom följande parametrar kan du läsa beskrivningarna i avsnittet Vanliga parametrar .
artifact
String
artifactId
i Maven-projektetgroupId:artifactId:version[:packaging]
artifactId
String
groupId
String
groupId
för den artefakt som ska installerasinstall
boolean
true
localRepository
org.apache.maven.artifact.repository.ArtifactRepository
localRepository
packageFile
java.io.File
packaging
String
zip
pomRemoteRepositories
java.util.List
remoteArtifactRepositories
som är definierad för projektet Mavenproject
org.apache.maven.project.MavenProject
repositoryId
(POM), repoID
(kommandorad)String
temp
repositoryUrl
(POM), repoURL
(kommandorad)String
ls ls
Visar de paket som har distribuerats till Package Manager.
Parametrar parameters-2
Alla parametrar för ls-målet beskrivs i avsnittet Vanliga parametrar.
rm rm
Tar bort ett paket från Package Manager.
Parametrar parameters-3
Alla parametrar för RM-målet beskrivs i avsnittet Vanliga parametrar.
avinstallera uninstall
Avinstallerar ett paket. Paketet finns kvar på servern i avinstallerat läge.
Parametrar parameters-4
Alla parametrar för avinstallationsmålet beskrivs i avsnittet Vanliga parametrar.
help help
Parametrar parameters-6
detail
boolean
false
goal
String
indentSize
int
2
lineLength
int
80
Inkludera en miniatyrbild eller egenskapsfil i paketet including-a-thumbnail-image-or-properties-file-in-the-package
Ersätt standardpaketkonfigurationsfilerna för att anpassa paketegenskaperna. Ta till exempel med en miniatyrbild för att skilja på paketet i Pakethanteraren.
Källfilerna kan finnas var som helst i filsystemet. I POM-filen definierar du byggresurser som kopierar källfilerna till target/vault-work/META-INF
för inkludering i paketet.
Följande POM-kod lägger till filerna i mappen META-INF
i projektkällan i paketet:
<build>
<resources>
<!-- vault META-INF resources (thumbnail and so on) -->
<resource>
<directory>${basedir}/src/main/content/META-INF</directory>
<targetPath>../vault-work/META-INF</targetPath>
</resource>
</resources>
</build>
Följande POM-kod lägger bara till en miniatyrbild i paketet. Miniatyrbilden måste ha namnet thumbnail.png
och finnas i mappen META-INF/vault/definition
i paketet. I det här exemplet finns källfilen i mappen /src/main/content/META-INF/vault/definition
i projektet:
<build>
<resources>
<!-- thumbnail only -->
<resource>
<directory>${basedir}/src/main/content/META-INF/vault/definition</directory>
<targetPath>../vault-work/META-INF/vault/definition</targetPath>
</resource>
</resources>
</build>
Använda den AEM projekttypen för att generera AEM projekt using-archetypes
Den senaste AEM Project Archetype implementerar paketstrukturen med bästa praxis för både lokala implementeringar och AMS-implementeringar och rekommenderas för alla AEM projekt.