【问题标题】:Running java files without ugly command prompt box in the background在后台运行没有丑陋的命令提示框的java文件
【发布时间】:2013-05-12 16:57:26
【问题描述】:

我使用 eclipse 制作了一个带有 GUI 的 java 程序,所以每当我想运行它时,我都会在那里运行它,但我的朋友想在他的计算机上运行它,所以我在命令提示符下使用 javac 制作了一个类文件,还制作了运行程序的批处理文件。问题是每次 ha 运行它时,这个命令窗口仍然在后台。所以我想要的是让那个盒子消失,有什么办法吗?

感谢所有答案:)

【问题讨论】:

    标签: java cmd javac


    【解决方案1】:

    使用javaw 而不是java 启动它。 Description for java 提到:

    javaw 命令与java 相同,只是javaw 没有关联的控制台窗口。当您不希望出现命令提示符窗口时,请使用 javaw。但是,如果由于某种原因启动失败,javaw 启动器将显示一个包含错误信息的对话框。

    【讨论】:

      【解决方案2】:

      再开一堂课,我认为是最好的解决方案。

      import java.io.IOException;
      public class Main2 {
      
      public static void main(String[] args) {
      
          try {
              String[] cmdArray = new String[ args.length + 1 ];
              cmdArray[0] = "javaw";
              for ( int a0=0; a0 < args.length; a0++ ) {
                  cmdArray[ a0 +1 ] = args[a0];
              }
              Runtime.getRuntime().exec(  cmdArray ); 
          }
          catch (IOException e) {
              e.printStackTrace();
          }
      }
      
      }
      

      那么你需要一个蝙蝠,像这样的东西

      @echo off
      set TMP_CLASSPATH=%CLASSPATH%
      cd c:\WorkDir
      set CLASSPATH=C:\WorkDir\mayapps.jar
      set CLASSPATH=%CLASSPATH%;C:\WorkDir\lib\others.jar
      
      java -cp "%CLASSPATH%"  Main2 -splash:mysplash.gif -Dlog4j.configuration=myapp.log4j  mymainclass  -param1=xxx -param2 etc
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-02-11
        相关资源
        最近更新 更多