Като инструмент за регистриране използвам Log4j2 и това се извиква чрез използване на системно свойство (/VM аргумент), като се използва:
-Dlog4j.configurationFile=./config/log4j2_config.xml
За компилиране на моите проекти използвам Maven и за създаване на exe-файлове Launch4j (Plugin: com.akathist.maven.plugins.launch4j).
Дефиницията на плъгина в моя pom.xml изглежда така:
<plugin>
<groupId>com.akathist.maven.plugins.launch4j</groupId>
<artifactId>launch4j-maven-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<id>l4j-clui</id>
<phase>package</phase>
<goals>
<goal>launch4j</goal>
</goals>
<configuration>
<headerType>gui</headerType>
<cmdLine>./config/MyConfig.xml</cmdLine>
<opt>com.akathist.maven.plugins.launch4j.configurationFile=./config/log4j2_config.xml</opt>
<jar>${project.build.directory}/${project.build.finalName}-jar-with-dependencies.jar</jar>
<outfile>${project.build.directory}/MyExe.exe</outfile>
<downloadUrl>http://java.com/download</downloadUrl>
<classPath>
<mainClass>de.my.path.MainClass</mainClass>
<!-- <preCp>anything</preCp> -->
</classPath>
<!-- <icon>${project.basedir}/src/main/assembly/application.ico</icon> -->
<jre>
<minVersion>1.7.0_00</minVersion>
<!-- <jdkPreference>preferJre</jdkPreference> -->
</jre>
</configuration>
</execution>
</executions>
</plugin>
Въпросът ми сега е:
Как мога да задам системното свойство за интегрирането на log4j2?!
Ако се опитате да го поставите в скоби с "opt" (http://launch4j.sourceforge.net/docs.html)
Или нещо такова:
<vars>
<var>-Dlog4j.configurationFile=./config/log4j2_config.xml</var>
</vars>
Но и двете не работеха и моят регистратор не записваше..
Може би вие сте имали същия проблем и можете да ми помогнете.
Благодаря ти за помощта!