2017-10-20 53 views
0

Dans le cadre de l'évaluation, en plaçant cette requête ici aussi, au cas où quelqu'un d'autre a également repéré le problème et l'a résolu.Compilateur ou moteur d'exécution Install4J propriétés/variables

Ma question est de savoir comment transmettre des paramètres au compilateur install4jc à partir de la ligne de commande lors de l'exécution d'une compilation maven, par exemple. J'ai quelque chose comme ça au moment:

mvn clean package -Dinstall4j.home=$INSTALL4J_HOME -Dinstall4j.compiler=$INSTALL4J_COMPILER -Dxxxx.install4j.project.file=$XXXXX_INSTALL4J_PROJECT_FILE 

mais je suis jeté cette erreur:

[INFO] Loading config file 
/path/to/installer-file 
[INFO] install4j: compilation failed. Reason: 
null------------------------------------------------------------------------------ 

[INFO] 
[INFO] The private key is encrypted. To avoid manual intervention, set 
the 
[INFO] "--mac-keystore-password" command line option or the 
[INFO] 
"macKeystorePassword" ant task attribute. 
[INFO] 
------------------------------------------------------------------------------ 
[INFO] 
Enter the password for the macOS key store: 
[INFO] 
------------------------------------------------------------------------ 
[INFO] 
BUILD FAILURE 

Je suis plus préoccupé par le passage des mots de passe via maven, je sais comment les passer par install4jc ligne de commande en utilisant l'option -D.

Y a-t-il une propriété compiler. ou runtime. (voir https://resources.ej-technologies.com/install4j/help/doc/steps/general/variables.html) pouvant être transmise avec ce mot de passe. Il en va de même pour le windows keystore password.

+0

Je suppose que vous utilisez le plugin maven de [sonatype] (http://sonatype.github.io/install4j-support/install4j-maven-plugin/plugin-info.html), et vous? Vous pouvez y prédéfinir les propriétés du plugin maven dans la partie configuration et remplacer les propriétés via la ligne de commande à des fins de développement ou de sécurité avec '-Dinstall4j.winKeystorePassword = xyz'. – Hardie82

Répondre

0

Vous pouvez utiliser Maven-Profiles pour cette tâche.

En supposant que vous voulez utiliser la propriété « Hokus.Pokus » vous pouvez définir un profil dans votre

~/.m2/settings.xml 

comme suit:

<profile> 
     <id>MagicSecret</id> 
     <properties> 
      <Hokus.Pokus>Secret</Hokus.Pokus> 
     </properties> 
    </profile> 

Vous devez placer cette section dans les sections

<profiles> 

Vous devez maintenant activer ce profil lorsque vous exécutez votre projet comme

mvn -PMagicSecret clean validate compile package ... 

De cette façon, vous pouvez utiliser la propriété partout dans votre projet pom.xml.