如何使用launch4j和maven在类路径上首先添加目录?

时间:2012-07-17 06:48:15

标签: java maven launch4j

我正在使用launch4j maven插件为我的应用程序生成.exe。这就是我在pom.xml中的内容:

        <plugin>
            <groupId>com.akathist.maven.plugins.launch4j</groupId>
            <artifactId>launch4j-maven-plugin</artifactId>
            <version>1.5.1</version>
            <executions>
                <execution>
                    <id>step-1-build-exe</id>
                    <phase>package</phase>
                    <goals>
                        <goal>launch4j</goal>
                    </goals>
                    <configuration>
                        <dontWrapJar>true</dontWrapJar>
                        <headerType>gui</headerType>
                        <outfile>target/MyApplication.exe</outfile>
                        <jar>${project.artifactId}-${project.version}.jar</jar>
                        <errTitle/>
                        <cmdLine>-Xms25m -Xmx50m</cmdLine>
                        <chdir>.</chdir>
                        <priority>normal</priority>
                        <downloadUrl>http://java.com/download</downloadUrl>
                        <supportUrl/>
                        <customProcName>false</customProcName>
                        <stayAlive>false</stayAlive>
                        <manifest/>
                        <icon>${project.basedir}/src/main/assembly/MyApp.ico</icon>
                        <classPath>
                            <mainClass>com.company.app.MainApp</mainClass>
                            <addDependencies>false</addDependencies>
                            <preCp>config;koala.jar;comm.jar;jniwrap.jar;log4j-1.2.12.jar</preCp>
                        </classPath>
                        <jre>
                            <path>jre</path>
                            <minVersion/>
                            <maxVersion/>
                            <jdkPreference>preferJre</jdkPreference>
                        </jre>
                    </configuration>
                </execution>
            </executions>
     </plugin>

我希望会发生的是'config'目录首先出现在类路径中,但是包含我的主类的jar总是放在类路径的第一位。我想先放置配置目录,这样就很容易覆盖主jar中的某些配置文件。

我用http://www.mkyong.com/java/how-to-print-out-the-current-project-classpath/打印了类路径以查看它是什么。

1 个答案:

答案 0 :(得分:0)

如果你可以使用普通的java cmd来做,那么也许你可以通过这种方式将它直接添加到java调用中

<jre>
    <path>jre</path>
    <minVersion/>
    <maxVersion/>
    <jdkPreference>preferJre</jdkPreference>
    <opts>
        <opt>-cp yourclasspath/opt>
    </opts>
</jre>