maven dependency integration with eclipse
En aquest tutorial, parlarem detalladament de la integració de Maven amb Eclipse i TestNG, Maven Dependency Scope i Maven Deployment Automation:
Al tutorial anterior, vam discutir la comparació entre els connectors Gradle vs Maven i Maven. Aquest tutorial explica com integrar Maven amb altres eines, la dependència de Maven i el desplegament de Maven.
com obrir el fitxer bin a Android
Comencem!
=> Visiteu aquí la sèrie exclusiva de tutorials de formació Maven.
Què aprendreu:
- Integració de Maven amb Eclipse
- Integració de Maven amb TestNG
- Àmbit de dependència de Maven
- Automatització del desplegament de Maven
- Connector de llançament de Maven
- Conclusió
- Lectura recomanada
Integració de Maven amb Eclipse
La integració de Maven amb Eclipse ja s'ha discutit en profunditat sobre això pàgina
En determinats escenaris en què construïm un projecte Maven des del símbol del sistema i hem de portar aquest projecte a Eclipse, s'hauran d'executar els passos següents.
# 1) Aneu a la ubicació del fitxer pom per al projecte Maven. Executeu l'ordre següent.
mvn eclipse: eclipsi
# 2) .classpath i .projecte es crearà a la ubicació del projecte Maven.
Verifiqueu si el connector Maven ja es proporciona a Eclipse from Windows => Preferències , Maven hi hauria d’estar present. Totes les versions actuals d'Eclipse tenen els connectors Maven per defecte i, si no hi és, el podem obtenir aquí .
# 3) Ara, perquè Maven i Eclipse funcionin conjuntament, importeu el projecte Maven des del fitxer. A continuació, seleccioneu el fitxer Projecte Maven existent.
# 4) Navegueu per la ubicació del projecte i Continua.

La imatge que es mostra més amunt mostra el Projecte Maven importat a Eclipse.
Integració de Maven amb TestNG
La manera d’integrar Maven amb TestNG s’ha comentat en profunditat a la pàgina següent.
=> Integració de Maven amb TestNg mitjançant el connector Maven Surefire
Tot i que hem integrat Maven amb TestNG al nostre projecte, pot haver-hi situacions en què el nostre projecte tingui més d’un fitxer XML Testng. Per exemple, totes les funcions de la suite de regressió es descriuen en un testng.xml i els casos de prova de seny es descriuen en l’altre fitxer testng.xml.
En una situació com aquesta, hem d'utilitzar el fitxer Perfil concepte a Maven. Al fitxer pom hem de definir els perfils. Cadascuna és una part de l’etiqueta i té una relació associada.
A continuació es mostra un fitxer pom.xml que té un fragment de codi de perfils:
Regression org.apache.maven.plugins maven-surefire-plugin 2.20.1 testngRegression.xml Sanity org.apache.maven.plugins maven-surefire-plugin 2.20.1 testngSanity.xml
Tingueu en compte que tenim dos perfils anteriors, descrits a sota i que cada perfil té un identificador associat. Per exemple, Regressió i Seny també, a la suiteXmlFiles, hem definit el nom del fitxer xml Testng corresponent a l'identificador ( testngRegression.xml i testngSanity.xml ).
matrius i funcions c ++
Per tant, tenim dos perfils aquí i podem controlar cada fitxer Testng amb l'ajut d'un sol fitxer pom.
Ara, per desencadenar un cas de prova per a cada fitxer Testng directament des del símbol del sistema, hem de desplaçar-nos a la carpeta del projecte i executar l'ordre següent.
mvn test –PRegression
Un cop executat, Maven busca el perfil amb l'identificador Regressió i el corresponent testngRegression.xml dossier. Per tant, només s’executen les proves que hi intervenen.
De la mateixa manera, per a un perfil amb identificador Sanity, l'ordre és:
mvn test –PSanity
Aquí el testngSanity.xml El fitxer s’utilitza per determinar els casos de prova que s’han d’executar. Per tant, per desencadenar un determinat conjunt de casos de prova, no hem de modificar el nom del fitxer TestNG al pom, sinó que es pot aconseguir fàcilment mantenint fitxers TestNG separats.
Al fitxer pom, podem assignar aquests fitxers i finalment executar-los amb l'ajuda de perfils de Maven des de l'indicador d'ordres.
Àmbit de dependència de Maven
Maven té un total de sis àmbits que s'enumeren a continuació.
- Proporcionat
- Prova
- Sistema
- Importació
- Compila
- Temps d'execució
# 1) Àmbit d'execució
La dependència de Maven té un abast com a temps d'execució i no s'utilitza amb finalitats de compilació. Constitueix un camí de classe per executar i provar el projecte. El fragment de codi següent mostra una dependència de l'àmbit d'execució.
com.softwaretesting MavenJava 2.3 runtime
# 2) Abast del sistema
La dependència de Maven amb l'abast com a sistema té una semblança amb l'abast proporcionat. Les dependències del sistema no es poden descarregar del dipòsit remot i generalment es troben als directoris del projecte. El fragment de codi següent mostra una dependència de l'abast del sistema.
com.software MavenJava1 system 3.0 ${dir}warWEB-INFlibdep.jar
# 3) Abast proporcionat
La dependència de Maven que tingui un abast tal com es proporciona és necessària per construir i provar els projectes. No es recomana exportar aquesta dependència, ja que estan disponibles en temps d'execució. Tanmateix, aquesta dependència és necessària per executar la compilació. El fragment de codi següent mostra una dependència d'abast proporcionada.
com.test MavenJava2 5.1.1 provided
# 4) Abast de la prova
La dependència de Maven que tingui un abast de la prova no és necessària per a la construcció i execució del projecte. S'utilitzen essencialment per compilar i executar els casos de prova unitària. El fragment de codi següent mostra una dependència de l'abast de la prova.
com.testing MavenJava3 1.0.2 test
# 5) Àmbit d'importació
Dins del fitxer pom, el fitxer dependencyManagement La secció conté la importació d'abast. Això significa que s'ha de canviar la dependència amb el grup efectiu de dependències que es proporciona a la secció dependencyManagement del fitxer pom. El fragment de codi següent mostra una dependència de l'àmbit d'importació.
com.testhelp MavenJava4 SNAP import pom
# 6) Compilació d'abast
La dependència de Maven que té un àmbit de compilació és la predeterminada. Aquesta dependència és essencial per construir, provar i executar el projecte. Això és sobretot important per resoldre el codi font de Java amb declaracions d’importació. El fragment de codi següent mostra una dependència de l'àmbit de compilació.
logging log 2.1.3 compile
Automatització del desplegament de Maven
El desplegament del projecte és una fase crítica i implica diversos passos definits tal i com es mostra a continuació:
- El codi desenvolupat per comprovar-se al repositori.
- Codi font que es baixarà del dipòsit.
- Recopilació i creació de l'aplicació i generació de fitxers JAR o WAR.
- Posar els fitxers JAR o WAR identificats en una ubicació de xarxa familiar.
- Carregueu els fitxers JAR o WAR.
- Desplegueu els fitxers JAR o WAR descarregats al servidor de destinació.
- El número de la nova versió de la sol·licitud i la data a actualitzar a la documentació.
Els passos esmentats són seguits per cada membre dels equips implicats en el projecte. Dels passos esmentats anteriorment, si algú es perd o es fa res correctament, resulta error de construcció i desplegament . Per tant, si hi ha errors, s’hauran de corregir automàticament.
com utilitzar un fitxer torrent
Maven segueix el mètode d'automatització del desplegament per tal de fer-lo automàtic i robust. Això s’aconsegueix mitjançant la combinació dels processos que s’enumeren a continuació:
- Construcció i publicació del projecte que Maven encarregarà.
- Codi font que ha de gestionar el dipòsit de subversions i el codi font.
- Projectes binaris per tenir cura del gestor de dipòsit remot.
El plug-in Maven Release s’encarrega del procés de compilació i versió automatitzada de Maven. El fitxer pom.xml s’hauria d’actualitzar tal com es mostra a continuació.
El codi següent és per al projecte com.softwaretestHelp pom.xml
4.0.0 com.softwaretestHelp TestApplication war 2.0 WebTest Maven Java http://maven.apache.org http://www.svn.com scm:svn:http://localhost:8080/svn/jrepo/trunk/Framework scm:svn:testing/test@localhost:8080:common_core_api:1101:code SampleTest-Web-Release Release repository http://localhost:8082/nexus/content/repositories/SampleTest-Web-Release org.apache.maven.plugins maven-release-plugin 2.0-beta-9 false deploy (SampleTest-Web- checkin) junit junit 3.9 test
A continuació es detallen les funcions destacades del fitxer pom.xml anterior:
- SCM : La ubicació de SVN (on hi ha el codi font) està configurada per SCM.
- Dipòsits : És la ubicació dels fitxers JAR o WAR o EAR o de qualsevol altre artefacte del projecte després de completar amb èxit el projecte.
- Connectar : Automatització del desplegament realitzada pel connector de llançament Maven.
Connector de llançament de Maven
El connector de llançament de Maven realitza les següents activitats:
- llançament mvn: net - Neteja l'espai de treball de la versió anterior abans de l'arribada de la versió futura.
- llançament mvn: retrocés - En cas de fracàs de la compilació anterior, es torna enrere a l'espai de treball.
- llançament mvn: preparar-se - Verifica si hi ha canvis no compromesos en els fitxers. A més, comprova les dependències de la instantània i actualitza el número de versió de l'aplicació. Modifica el pom a SCM. S'encarrega de l'execució del cas de prova i el codi final es compromet a SCM. Realitza l'etiquetatge del codi en la subversió. Finalment, el número de versió s'incrementa i s'adjunta a l'SNAPSHOT per a altres versions en el futur mitjançant aquest connector.
- llançament mvn: realitzar - Comprova el codi present al dipòsit i després executa els objectius de compilació de Maven per desplegar l’artefacte de compilació al dipòsit.
Finalment, hem d'executar l'ordre següent per construir el projecte:
mvn release: prepare
Un cop finalitzada la compilació amb èxit, executeu l'ordre següent:
mvn release: perform
Ara el fitxer WAR es penja al dipòsit.
Conclusió
Esperem que les principals parts de la integració de Maven amb Eclipse, la seva integració amb TestNG, els perfils de Maven, l’àmbit de dependència de Maven i l’automatització del desplegament de Maven siguin comprensibles ara. A més, hem comentat la majoria dels àmbits de les dependències aquí.
Per al procés de desplegament de Maven, hem explorat tots els passos en profunditat i hem explicat alguns dels connectors de llançament de Maven. Llegiu els temes i, a poc a poc, anireu comprenent l’essència real d’utilitzar Maven en el nostre treball.
Continuarem amb la sèrie i recopilarem coneixements sobre la integració de Maven Jenkins, preguntes sobre les entrevistes de Maven, etc. als nostres propers tutorials.
=> Consulteu TOTS els tutorials de Maven aquí.
Lectura recomanada
- Què és Maven: tutorial de Maven per a principiants
- Tutorials Eclipse en profunditat per a principiants
- Tutorial TestNG: Introducció a TestNG Framework
- Tutorial Eclipse: integració de TestNG a Eclipse Java IDE
- Configuració de Maven amb Eclipse Java IDE
- Complements de Gradle Vs Maven i Maven
- Maven amb documentació de Jenkins i Maven per a projectes
- Integració de Maven amb TestNg mitjançant el connector Maven Surefire