Adobe Content Package Maven Plugin adobe-content-package-maven-plugin
Använd pluginen Adobe Content Package Maven för att integrera paketdistribution och hanteringsuppgifter i dina Maven-projekt.
Distributionen av de konstruerade paketen till AEM utförs av plugin-programmet Adobe Content Package Maven 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.
- Skapa 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 metodstrategierna 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 som använder proxy 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 .
failOnErrorbooleanfalsetrue gör att bygget misslyckas när ett fel inträffar. Värdet false gör att felet ignoreras.packagenameStringbuild: Ja, install: Nej, rm: Jabuild: Inget standardvärde, install: Värdet för egenskapen artifactId i Maven-projektetlspasswordStringadminpackageserverIdStringpackagetargetURLStringhttp://localhost:4502/crx/packmgr/service.jsppackagetimeoutint5packageuseProxybooleantruetrue gör att Maven använder den första aktiva proxykonfigurationen som hittas för proxybegäranden till Package Manager.packageuserIdStringadminpackageverbosebooleanfalsepackagebygg build
Skapar ett innehållspaket som redan har definierats på en AEM-instans.
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 .
artifactStringartifactId i Maven-projektetgroupId:artifactId:version[:packaging]artifactIdStringgroupIdStringgroupId för den artefakt som ska installerasinstallbooleantruelocalRepositoryorg.apache.maven.artifact.repository.ArtifactRepositorylocalRepositorypackageFilejava.io.FilepackagingStringzippomRemoteRepositoriesjava.util.ListremoteArtifactRepositories som är definierad för projektet Mavenprojectorg.apache.maven.project.MavenProjectrepositoryId (POM), repoID (kommandorad)StringtemprepositoryUrl (POM), repoURL (kommandorad)Stringls 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
detailbooleanfalsegoalStringindentSizeint2lineLengthint80Inkludera 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 AEM Project Archetype för att generera AEM-projekt using-archetypes
Den senaste AEM Project Archetype-versionen implementerar den bästa paketstrukturen för både lokala implementeringar och AMS-implementeringar och rekommenderas för alla AEM-projekt.