Plug-in Maven pacchetto di contenuti Adobe adobe-content-package-maven-plugin

Utilizza il plug-in Maven Adobe Content Package per integrare le attività di distribuzione e gestione dei pacchetti nei progetti Maven.

La distribuzione dei pacchetti costruiti all'AEM viene eseguita dal plug-in Maven Adobe Content Package e consente l'automazione delle attività normalmente eseguite con AEM Gestione pacchetti:

  • Creare nuovi pacchetti dai file nel file system.
  • Installare e disinstallare pacchetti su AEM.
  • Creare pacchetti già definiti in AEM.
  • Ottieni un elenco dei pacchetti installati su AEM.
  • Rimuovere un pacchetto dall’AEM.

Questo documento descrive come utilizzare Maven per gestire queste attività. Tuttavia è anche importante comprendere come sono strutturati i progetti AEM e i relativi pacchetti.

NOTE
Utilizza sempre le versioni più recenti di questi plug-in.
NOTE
Il pacchetto creation è ora di proprietà del plug-in Maven Apache Jackrabbit FileVault Package.
In questo articolo viene descritta la distribuzione dei pacchetti costruiti per l'AEM come eseguito dal plug-in Maven per il pacchetto di contenuti Adobe.

Pacchetti e struttura del progetto AEM aem-project-structure

AEM as a Cloud Service aderisce alle best practice più recenti per la gestione dei pacchetti e la struttura del progetto, come implementato dall’archetipo del progetto AEM più recente.

TIP
Consulta l'articolo Struttura del progetto AEM nella documentazione di AEM as a Cloud Service e la documentazione Archetipo del progetto AEM. Entrambi sono pienamente supportati per AEM 6.5.

Ottenere il plug-in Maven del pacchetto di contenuti obtaining-the-content-package-maven-plugin

Il plug-in è disponibile nell'archivio centrale Maven.

Obiettivi e parametri del plug-in Maven del pacchetto di contenuti

Per utilizzare il plug-in Maven per pacchetto di contenuti, aggiungi il seguente elemento plug-in all’interno dell’elemento di build del file POM:

<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>

Per consentire a Maven di scaricare il plug-in, utilizza il profilo fornito nella sezione Ottenere il plug-in Maven del pacchetto di contenuti in questa pagina.

Obiettivi del plug-in Maven per pacchetto di contenuti goals-of-the-content-package-maven-plugin

Gli obiettivi e i parametri di obiettivo forniti dal plug-in Pacchetto di contenuti sono descritti nelle sezioni seguenti. I parametri descritti nella sezione Parametri comuni possono essere utilizzati per la maggior parte degli obiettivi. I parametri che si applicano a un obiettivo sono descritti nella sezione relativa a tale obiettivo.

Prefisso plug-in plugin-prefix

Il prefisso del plug-in è content-package. Utilizza questo prefisso per eseguire un obiettivo dalla riga di comando, come nell’esempio seguente:

mvn content-package:build

Prefisso parametro parameter-prefix

Se non diversamente specificato, gli obiettivi e i parametri del plug-in utilizzano il prefisso vault, come nell'esempio seguente:

mvn content-package:install -Dvault.targetURL="https://192.168.1.100:4502/crx/packmgr/service.jsp"

Proxy proxies

Per gli obiettivi che utilizzano i proxy per l’AEM viene utilizzata la prima configurazione proxy valida trovata nelle impostazioni Maven. Se non viene trovata alcuna configurazione proxy, non viene utilizzato alcun proxy. Vedi il parametro useProxy nella sezione Parametri comuni.

Parametri comuni common-parameters

I parametri nella tabella seguente sono comuni a tutti gli obiettivi, tranne quando indicato nella colonna Obiettivi.

Nome
Tipo
Obbligatorio
Valore predefinito
Descrizione
Obiettivi
failOnError
boolean
No
false
Un valore di true causa un errore di compilazione. Il valore false fa sì che la build ignori l'errore.
Tutti gli obiettivi tranne package
name
String
build: Sì, install: No, rm: Sì
build: nessun valore predefinito, install: il valore della proprietà artifactId del progetto Maven
Nome del pacchetto su cui intervenire
Tutti gli obiettivi tranne ls
password
String
admin
Password utilizzata per l’autenticazione con AEM
Tutti gli obiettivi tranne package
serverId
String
No
ID server da cui recuperare il nome utente e la password per l'autenticazione
Tutti gli obiettivi tranne package
targetURL
String
http://localhost:4502/crx/packmgr/service.jsp
URL dell’API del servizio HTTP del gestore di pacchetti AEM
Tutti gli obiettivi tranne package
timeout
int
No
5
Timeout di connessione per la comunicazione con il servizio Gestione pacchetti, in secondi
Tutti gli obiettivi tranne package
useProxy
boolean
No
true
Il valore true fa in modo che Maven utilizzi la prima configurazione proxy attiva trovata per le richieste proxy al gestore di pacchetti.
Tutti gli obiettivi tranne package
userId
String
admin
Nome utente da autenticare con AEM
Tutti gli obiettivi tranne package
verbose
boolean
No
false
Abilita o disabilita la registrazione dettagliata
Tutti gli obiettivi tranne package

build build

Genera un pacchetto di contenuti già definito in un’istanza AEM.

NOTE
Questo obiettivo non deve essere eseguito all’interno di un progetto Maven.

Parametri parameters

Tutti i parametri per l'obiettivo di compilazione sono descritti nella sezione Parametri comuni.

installare install

Installa un pacchetto nel repository. L’esecuzione di questo obiettivo non richiede un progetto Maven. L'obiettivo è associato alla fase install del ciclo di vita della build Maven.

Parametri parameters-1

Oltre ai seguenti parametri, vedere le descrizioni nella sezione Parametri comuni.

Nome
Tipo
Obbligatorio
Valore predefinito
Descrizione
artifact
String
No
Valore della proprietà artifactId del progetto Maven
Una stringa del modulo groupId:artifactId:version[:packaging]
artifactId
String
No
Nessuno
ID dell’artefatto da installare
groupId
String
No
Nessuno
groupId dell'artefatto da installare
install
boolean
No
true
Determina se decomprimere automaticamente il pacchetto quando viene caricato
localRepository
org.apache.maven.artifact.repository.ArtifactRepository
No
Valore della variabile di sistema localRepository
L’archivio Maven locale che non può essere configurato utilizzando la configurazione del plug-in in quanto viene sempre utilizzata la proprietà di sistema
packageFile
java.io.File
No
L’artefatto principale definito per il progetto Maven
Nome del file del pacchetto da installare
packaging
String
No
zip
Tipo di pacchetto dell'artefatto da installare
pomRemoteRepositories
java.util.List
Valore della proprietà remoteArtifactRepositories definita per il progetto Maven
Questo valore non può essere configurato utilizzando la configurazione del plug-in e deve essere specificato nel progetto.
project
org.apache.maven.project.MavenProject
Progetto per il quale è configurato il plug-in
Il progetto Maven che è implicito perché il progetto contiene la configurazione del plug-in.
repositoryId (POM), repoID (riga di comando)
String
No
temp
ID dell’archivio da cui viene recuperato l’artefatto
repositoryUrl (POM), repoURL (riga di comando)
String
No
Nessuno
URL dell’archivio da cui viene recuperato l’artefatto
version
Stringa
No
Nessuno
Versione dell'artefatto da installare

ls ls

Elenca i pacchetti distribuiti in Gestione pacchetti.

Parametri parameters-2

Tutti i parametri dell'obiettivo ls sono descritti nella sezione Parametri comuni.

rm rm

Rimuove un pacchetto da Gestione pacchetti.

Parametri parameters-3

Tutti i parametri dell'obiettivo rm sono descritti nella sezione Parametri comuni.

disinstalla uninstall

Disinstalla un pacchetto. Il pacchetto rimane nel server nello stato disinstallato.

Parametri parameters-4

Tutti i parametri dell'obiettivo di disinstallazione sono descritti nella sezione Parametri comuni.

aiuto help

Parametri parameters-6

Nome
Tipo
Obbligatorio
Valore predefinito
Descrizione
detail
boolean
No
false
Determina se visualizzare tutte le proprietà impostabili per ogni obiettivo
goal
String
No
Nessuno
Questi parametri definiscono il nome dell’obiettivo per il quale visualizzare la guida. Se non viene specificato alcun valore, viene visualizzata la guida per tutti gli obiettivi.
indentSize
int
No
2
Numero di spazi da utilizzare per il rientro di ciascun livello (se definito, deve essere positivo)
lineLength
int
No
80
Lunghezza massima di una linea di visualizzazione (deve essere positiva se definita)

Inclusione di un'immagine di anteprima o di un file delle proprietà nel pacchetto including-a-thumbnail-image-or-properties-file-in-the-package

Sostituire i file di configurazione del pacchetto predefiniti per personalizzare le proprietà del pacchetto. Ad esempio, includere un'immagine di anteprima per distinguere il pacchetto in Gestione pacchetti.

I file di origine possono trovarsi in qualsiasi punto del file system. Nel file POM, definire le risorse di compilazione per copiare i file di origine in target/vault-work/META-INF per l'inclusione nel pacchetto.

Il codice POM seguente aggiunge i file nella cartella META-INF dell'origine del progetto al pacchetto:

<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>

Il codice POM seguente aggiunge al pacchetto solo un'immagine in miniatura. L'immagine miniatura deve essere denominata thumbnail.png e deve trovarsi nella cartella META-INF/vault/definition del pacchetto. In questo esempio, il file di origine si trova nella cartella /src/main/content/META-INF/vault/definition del progetto:

<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>

Utilizzo dell’archetipo del progetto AEM per generare progetti AEM using-archetypes

L’archetipo del progetto AEM più recente implementa la struttura di pacchetti di best practice sia per le implementazioni on-premise che per quelle AMS ed è consigliato per tutti i progetti AEM.

TIP
Consulta l'articolo Struttura del progetto AEM nella documentazione di AEM as a Cloud Service e la documentazione Archetipo del progetto AEM. Entrambi sono pienamente supportati per AEM 6.5.
recommendation-more-help
fbcff2a9-b6fe-4574-b04a-21e75df764ab