如何使exe文件在命令行上写入文本?

时间:2014-07-11 09:20:11

标签: java maven cmd exe launch4j

我有java控制台应用程序,将文本写入命令行。当我使用jar文件时,它工作正常。但是当我创建exe文件并使用它时,应用程序不会在命令行中写入任何内容。如果我用cmd myapp.exe writeSomething > output.txt写,我可以在output.txt中看到输出文本。我需要做什么才能开始将myapp.exe写入命令行?

我正在使用launch4j-maven-plugin。

这是我的配置:

<plugin>
    <groupId>com.akathist.maven.plugins.launch4j</groupId>
    <artifactId>launch4j-maven-plugin</artifactId>
    <version>1.5.2</version>
    <executions>
        <execution>
            <id>l4j-clui</id>
            <phase>package</phase>
            <goals>
                <goal>launch4j</goal>
            </goals>
            <configuration>
                <headerType>gui</headerType>
....

1 个答案:

答案 0 :(得分:1)

您的POM文件应包含类似

的内容
<plugin>
    <groupId>com.akathist.maven.plugins.launch4j</groupId>
    <artifactId>launch4j-maven-plugin</artifactId>
    <executions>
        <execution>
            <id>l4j-clui</id>
            <phase>package</phase>
            <goals><goal>launch4j</goal></goals>    
            <configuration>
                <headerType>console</headerType> 
                ....
            </configuration>

<headerType>console</headerType>是至关重要的一行。

因此,它会将EXE文件生成为控制台应用程序,而不是GUI应用程序。

有关详细信息,请参阅https://github.com/lukaszlenart/launch4j-maven-plugin