Impossible d’obtenir les valeurs de variable de pom

Bonjour, je travaille sur un projet java maven dans lequel je dois définir des variables dans le fichier pom.xml.

J’ai défini une variable comme suit dans mon fichier pom.xml.

 org.apache.maven.plugins maven-surefire-plugin 2.16   **/*Test*.java **/*Tests*.java **/Test*.java   NOTNULL    

Pour essayer d’accéder à la variable my.value , j’utilise le code Java suivant.

  Ssortingng testdata = System.getProperty("my.value"); System.out.println(testdata); 

Mais la sortie de la console me montre toujours null même lorsque je règle la valeur de la variable.

Quelqu’un peut-il indiquer ce qui ne va pas ici?

Merci d’avance.

EDIT: J’ai aussi essayé de déclarer le systemPropertyVariables sous le maven-failsafe-plugin systemPropertyVariables maven-failsafe-plugin mais sans changement.

REMARQUE : lorsque j’essaie de convertir la ligne de code testdata comme suit,

  Ssortingng testdata = System.getProperty("my.value").toSsortingng(); 

Je reçois une exception NullPointer à la ligne ci-dessus.

Edit: Désolé de poster ceci comme une réponse plus tôt ..

Je l’exécute en tant que test JUnit en utilisant le code plugin … / plugin que vous avez fourni, mais voici la sortie de ma console.

 21 Oct 2014 12:36:56,973 main INFO s.MyClass - Default Implicit timeout set in Driver to: 100 21 Oct 2014 12:36:56,973 main INFO s.MyClass - Default URL for server is set to: http://localhost:8080 ---- null 

L’URL est ce que j’essaie de récupérer à partir du fichier pom.xml et la condition que j’ai écrite est que

Si la valeur de la variable est vide, commence par $ {alors retourne localhost: 8080 sinon retourne l’URL.

Donc, si vous pouviez me signaler quelque chose qui ne va pas ici

Fonctionne pour moi avec maven-3.2.3 sur Windows avec JDK 1.6.0_67

Création d’un projet avec maven-archetype-quickstart

Ajout de lignes de pom pertinentes … combinant l’ exemple surefire avec des lignes spécifiques dans la question ci-dessus.

  org.apache.maven.plugins maven-surefire-plugin 2.16   NOTNULL ${project.build.directory}    

Lignes pertinentes dans AppTest.java

 /** * Rigourous Test :-) */ public void testApp() { System.out.println(System.getProperty("my.value")); System.out.println(System.getProperty("buildDirectory")); assertTrue( true ); } 

Sortie pertinente du mvn test

 ------------------------------------------------------- TESTS ------------------------------------------------------- Running com.mycompany.app.AppTest NOTNULL C:\Users\raghu\Documents\GitHub\mvn-examples\test-properties\target Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.003 sec - in c om.mycompany.app.AppTest 

Voici le projet en github.

@Raghuram Merci pour votre aide.

J’ai trouvé le moyen de contourner ce problème.

Dans mon fichier java, dans l’annotation @Before, je règle la valeur de la variable comme suit:

  System.setProperty("my.value","this value"); 

Et maintenant ça marche très bien.

À votre santé.

Note: Les gars je suis désolé pour poster une autre question comme une réponse .. 🙁