1

我知道这个问题已经在这里讨论过很多次了。我在带有 OSX 10.7.4 和 NetBeans 7.2.1 的 MAC 上运行

我不知道这是否是一个新的皱纹,我是一个java新手。无论如何,在项目窗口中选择了我的项目,它会显示该项目:

Idealizer -> Source Packages -> components-> AlsRun.java, GraphingData.java, Idealizer.java, jButtonListenerExample.java.

AlsRun 是主类。我可以在 IDE 中运行代码,也可以通过压缩 dist 并将其移动到任何地方并键入:java -jar "Idealizer.jar“(在“dist”中)。

在关于这个问题的其他讨论中,似乎涉及到 MANIFEST.MF。MANIFEST.MF 看起来是正确的:

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.8.3
Created-By: 1.6.0_35-b10-428-11M3811 (Apple Inc.)
Class-Path: 
X-COMMENT: Main-Class will be added automatically by build
Main-Class: components.AlsRun

我相信以下是两个大提示。

大提示1

当我从命令行运行代码时,程序接管,屏幕上显示的程序名称是 "components.AlsRun" 。当我尝试通过双击(从查找器)启动它时,会启动一个程序并且出现的名称是“AlsRun”。在后一种情况下启动的程序什么都不做,我只能从“强制退出”中杀死它。

大提示2

写完最后一句话后,我问自己如何从命令行杀死它。如果我通过双击运行程序然后运行ps -A | grep java它返回以下内容:

33383 ?? 0:00.84 /Library/Internet Plug-ins/JavaAppletPlugin.plugin/Contents/Home/bin/java

-jar /Users/pearson/NetBeansProjects/Idealizer/dist/Idealizer.jar

当我从命令行运行程序然后ps -A | grep java返回

33394 ttys001    0:01.46 /usr/bin/java -jar Idealizer.jar

它运行不同版本的java,具体取决于我是通过双击还是命令行启动它。

显然 NetBeans 认为我正在创建一个不同于应用程序的“Applet”?

我在这里不知所措。为我产生错误的代码的最短版本是:

package components; 
import javax.swing.JFileChooser;

public class AlsRun {

public static void main(String[] args) {

    JFileChooser fc = new JFileChooser();
    int returnVal = fc.showOpenDialog(null);        

    };
}
4

1 回答 1

0

Following the instructions here: http://www.oracle.com/technetwork/articles/javase/javatomac3-137430.html

fixed the problem.

于 2013-02-08T02:59:30.690 回答