2017-02-26 3 views
0

Je pense que c'est une question de base, mais je ne pouvais rien trouver à ce sujet sur Internet. J'écris un petit webservice dans une application monolithique. Je veux savoir par programme quel Java Key Store est utilisé.Trouver quel JKS grâce au code

Dans mon fichier pom je peux voir quelque chose comme ceci:

<artifactId>maven-surefire-plugin</artifactId> 
<version>2.16</version> 
<configuration> 
    <systemProperties> 
     <property> 
      <name>javax.net.ssl.trustStore</name> 
      <value>keystore/kc.jks</value> 
     </property> 
</configuration> 

Maintenant est le keystore mentionné dans le fichier pom utilisé ou Java interne.

REMARQUE: Je souhaite écrire du code pour trouver quel magasin de clés plutôt que de simplement vérifier certaines configurations.

Répondre

1

Le paramètre systemProperties de votre fichier pom ne s'applique qu'à vos tests et s'applique uniquement si vous configurez également surefire à fork, ce qui n'est pas le cas. Donc ça n'a aucun effet. Si vous définissez surefire à fork, afin que les propriétés du système prennent effet, vous pouvez voir le paramètre avec:

System.getProperty("javax.net.ssl.trustStore") 
+0

Cela me renvoie toujours null. Je l'ai essayé plusieurs fois. Quelle peut être la raison pour cela. Comment puis-je charger celui du fichier pom. Je pensais que mettre les choses dans le fichier pom le mettrait globalement. – orange14

+0

Voir les modifications pour répondre. – bmargulies

+0

la fourche ne fonctionne pas avec surefire. Je suis très curieux pourquoi cela ne fonctionne pas – orange14