我的jar文件不会执行

时间:2011-02-27 01:58:28

标签: java windows jar

档案PrintTest.java

    public class PrintTest{
      public static void main(String[] args){
           System.out.println("Why are you executing me?");
      }
    }

档案Manifest.txt

Main-Class: PrintTest

我的命令我跑到压缩到.jar

jar cfm PrintTest.jar Manifest.txt PrintTest.class

我也试过这个(即使没关系):

jar cmf PrintTest.jar Manifest.txt PrintTest.class

我的目录结构: C:\Program Files\Java\jdk1.6.0_24\PrintTest_jar

PrintTest_jarPrintTest.javaPrintTest.classManifest.txtPrintTest.jar

当我双击.jar文件时,没有任何反应。没有错误,没有。

PrintTest.class从命令行运行正常。我也在Windows上运行。

4 个答案:

答案 0 :(得分:2)

  

当我双击.jar文件时,没有任何反应。没有错误,什么都没有!

当这样启动时,控制台窗口将在程序执行完毕后立即消失。要查看输出,您应该从控制台运行程序,而不是双击jar文件。

编辑:要延迟程序终止,您可以执行以下操作:

 Scanner scanner = new Scanner(System.in);
 System.out.print("Press Enter to exit...");
 scanner.next();

但是,我认为从控制台运行控制台应用程序更有意义。

答案 1 :(得分:1)

为了延迟它而给你的代码是正确。但是,您需要从Java库导入实用程序才能使其正常工作。甚至在你的班级身体之前输入。

import java.util.Scanner

答案 2 :(得分:1)

如果我理解您的问题并显示您的清单文本文件,那么您必须确保文本文件在最后一行文本后面包含换行符,否则将无法正确处理。有关详情,请参阅此处:http://download.oracle.com/javase/tutorial/deployment/jar/modman.html

答案 3 :(得分:1)

我亲爱的朋友,你的应用程序是DOS程序,只能在DOS下运行,你没有创建GUI程序,如果它是一个GUI程序,它至少会显示在计算机上...... DOS是对于DOS而言......对不起。