English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Nel processo di sviluppo del progetto, il processo di deployment include i seguenti passaggi:
Inviare il codice del progetto a SVN o nel repository e aggiungere un tag.
Scaricare il codice sorgente completo da SVN.
Costruire l'applicazione.
Memorizzare i file di output della costruzione WAR o EAR in una posizione di rete comune.
Scaricare i file da rete e distribuirli sul sito di produzione.
Aggiornare la documentazione e aggiornare il numero di versione dell'applicazione.
Di solito, nel processo di sviluppo menzionato sopra, possono essere coinvolti più team. Un team potrebbe essere responsabile della consegna del codice, un altro del build, ecc. È probabile che per motivi umani e ambientali multi-team, qualsiasi passo possa andare a male. Ad esempio, una versione più vecchia non è stata aggiornata sui computer di rete, quindi il team di deploy ha ripubblicato una versione di build più vecchia.
Per realizzare un deploy automatizzato, combinare le seguenti soluzioni:
Costruire e pubblicare il progetto utilizzando Maven
Usare SubVersion, repository di codice sorgente per gestire il codice sorgente
Usare software di gestione delle repository remote (Jfrog o Nexus) per gestire i file binari del progetto.
Utilizzeremo i plugin distribuiti da Maven per creare un processo di pubblicazione automatizzato.
Esempio, il codice del file pom.xml del progetto bus-core-api è il seguente:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>bus-core-api</groupId> <artifactId>bus-core-api</artifactId> <version>1.0-SNAPSHOT</version> <packaging>jar</packaging> <scm> <url>http://www.svn.com</url> <connection>scm:svn:http://localhost:8080/svn/jrepo/trunk/</connection> Framework</connection> <developerConnection>scm:svn:${username}/${password}@localhost:8080:</developerConnection> common_core_api:1101:code</developerConnection> </scm> <distributionManagement> <repository> <id>Core-API-Java-Release</id> <name>Repository di rilascio</name> <url>http://localhost:8081/nexus/content/repositories/</url> Core-Api-Release</url> </repository> </distributionManagement> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-release-plugin</artifactId> <version>2.0-beta-9</version> <configuration> <useReleaseProfile>false</useReleaseProfile> <goals>deploy</goals> <scmCommentPrefix>[bus-core-api-release-checkin]-< /scmCommentPrefix> </configuration> </plugin> </plugins> </build> </project>
Nella file pom.xml, alcuni elementi nodali importanti che utilizziamo spesso sono elencati di seguito:
Nodo elemento | Descrizione |
---|---|
SCM | Configurazione del percorso SVN, Maven prenderà il codice da questo percorso. |
repository | Posizione del file WAR o EAR o JAR costruito, o altri componenti generati con successo dalla costruzione del codice sorgente. |
Plugin | Configura il plugin maven-release-plugin per implementare il processo di distribuzione automatizzata. |
Maven utilizza il plugin maven-release-plugin per completare i seguenti compiti.
mvn release:clean
Pulisci lo spazio di lavoro per garantire il successo del processo di pubblicazione più recente.
mvn release:rollback
In caso di fallimento del processo di pubblicazione precedente, annulla le modifiche al codice e alla configurazione dello spazio di lavoro per garantire il successo del processo di pubblicazione.
mvn release:prepare
Esegui diverse operazioni:
Controlla se ci sono modifiche non inviate localmente
Assicurati che non ci siano dipendenze di snapshot
Cambia le informazioni di versione dell'applicazione per la pubblicazione
Aggiorna il file POM al SVN
Esegui i casi di test
Invia il file POM modificato
Fai un segno al codice nel SVN
Aggiungi il numero di versione e la snapshot per la futura pubblicazione
Invia il file POM modificato al SVN
mvn release:perform
Passa il codice al punto in cui hai fatto il segno, esegui l'obiettivo di distribuzione Maven per distribuire il file WAR o costruire la struttura corrispondente nel deposito.
Apri il terminale dei comandi, vai alla directory C:\ > MVN > bus-core-api e esegui i seguenti comandi mvn.
C:\MVN\bus-core-api>mvn release:prepare
Maven inizia a costruire l'intero progetto. Dopo il successo della costruzione, è possibile eseguire i seguenti comandi mvn.
C:\MVN\bus-core-api>mvn release:perform
Dopo aver completato la costruzione, puoi verificare se il file JAR caricato nel tuo deposito funziona correttamente.