java在我的两级程序中找不到或加载主类

时间:2016-03-16 00:44:40

标签: java javac

在Eclipse中使用Java,我编写了一个两级程序来系统地解决亚里士多德的[19]数字难题。我的答案与亚里士多德的答案相符。 :-)'Nineteen.java'包含main(),解决逻辑和摆动代码以显示一个框架,五个面板和19个KTile19对象。 'KTile19.java'扩展JButton以创建一个自定义按钮来显示我正在进行的方案。 'Nineteen'在默认包中。 'KTile19'在'lassoObjects'包中。

我想将我的解决方案发送给我的孙子,从Windows命令提示符在他的电脑上运行。但是我有一个时间的野兽与你的“新Java开发人员的常见问题”:无法找到或加载主类19。当我赢得这场战斗时,这是一场严峻的胜利。

我希望我的孙子在C:\ Program Files \ Java \ LAsso下面的某处安装我的两个.java文件。编译我的.java文件的最佳和最简单的'javac'命令是什么?运行该程序的匹配'java'命令是什么?他应该创建的匹配文件夹结构是什么?

提前谢谢你。

1 个答案:

答案 0 :(得分:1)

基本上,您需要创建一个Manifest.mf文件,其中包含完全限定的Java类名。 Manifest与您的jar文件打包在一起。从那里你可以把它发送给你的孙子,他需要Open用Java。

简单的清单方式......在Eclipse中:

  • 右键单击Eclipse Project。
  • 选择导出...
  • 导航到Java> JAR文件。
  • 下一步>
  • 浏览并命名JAR文件
  • 下一步>
  • 下一个> (再次)
  • 启用“生成清单文件”选项。
  • 在工作区中保存清单...可能是您的Eclipse项目。
  • 在底部,使用main()键入(或浏览)Java类。
  • 单击“完成”。

Eclipse项目结构:

- Nineteen
  - src 
    - (default package)
      - Nineteen.java 
    - lassoObjects
      - KTile19.java 
  - Manifest.mf 

当您导出Manifest.mf应该如下所示:

Manifest-Version: 1.0
Main-Class: Nineteen

这是我的Java类,用于非常简单的设置......

Nineteen.java

import lassoObjects.KTile19;

public class Nineteen {

    public static void main(String[] args) {
        KTile19 lnewKTile = new KTile19 ();
        lnewKTile.doSomething ();

    }

}

KTile19.java

package lassoObjects;

import java.io.PrintStream;

public class KTile19 {

    public  PrintStream     Log = System.out;
    public  void    doSomething () {
        Log.println("I will start running Aristotle's problem.");
    }
}