【问题标题】:How do I compile and run a program in Java on my Mac?如何在我的 Mac 上编译和运行 Java 程序?
【发布时间】:2011-01-22 14:11:22
【问题描述】:

如何在我的 Mac 上编译和运行 Java 程序?

我是新人。

我还下载了一个在这里向我建议的程序,称为 text wrangler,如果这与情况有任何关系的话。

【问题讨论】:

    标签: java macos compilation


    【解决方案1】:

    在 Mac OSX 或任何主要操作系统上编译和运行 Java 应用程序非常容易。 Apple 包含一个功能齐全的 Java 运行时和开箱即用的 OSX 开发环境,因此您所要做的就是编写一个 Java 程序并使用内置工具来编译和运行它。

    编写你的第一个程序

    第一步是编写一个简单的 Java 程序。打开一个文本编辑器(内置的 TextEdit 应用程序可以正常工作),输入以下代码,然后将文件保存为“HelloWorld.java”在您的主目录中。

    public class HelloWorld {
        public static void main(String args[]) {
            System.out.println("Hello World!");
        }
    }
    

    例如,如果您的用户名是 David,请将其保存为“/Users/David/HelloWorld.java”。这个简单的程序声明了一个名为HelloWorld 的类,以及一个名为main 的方法。 main 方法在 Java 中很特殊,因为它是 Java 运行时在您告诉它执行程序时将尝试调用的方法。将其视为您的程序的起点。 System.out.println() 方法将在屏幕上打印一行文本,“Hello World!”在这个例子中。

    使用编译器

    现在您已经编写了一个简单的 Java 程序,您需要编译它。运行位于“Applications/Utilities/Terminal.app”中的终端应用程序。在终端中输入以下命令:

    cd ~
    javac HelloWorld.java
    

    您刚刚在 OSX 上编译了您的第一个 Java 应用程序,尽管它很简单。编译过程将生成一个名为“HelloWorld.class”的文件。该文件包含 Java 字节码,即 Java 虚拟机能够理解的指令。

    运行你的程序

    要运行程序,请在终端中键入以下命令。

    java HelloWorld
    

    此命令将启动 Java 虚拟机并尝试加载名为 HelloWorld 的类。一旦加载了该类,它将执行我之前提到的main 方法。您应该会看到“Hello World!”打印在终端窗口中。仅此而已。

    附带说明,TextWrangler 只是 OSX 的文本编辑器,与这种情况无关。在本例中,您可以将其用作文本编辑器,但肯定不是必需的。

    【讨论】:

    • 这件事发生了: 上次登录: 3 月 1 日星期一 23:41:53 在 ttys000 david-allenders-macbook-pro:~ davidallender$ cd ~ david-allenders-macbook-pro:~ davidallender$ javac Helloworld .java 错误:无法读取:Helloworld.java 1 错误 david-allenders-macbook-pro:~ davidallender$ 我做错了什么?
    • 看起来您要么将文件保存在错误的目录中,要么使用不正确的文件名保存了它。仔细检查 finder 中的主目录是否有一个名为“HelloWorld.java”的文件。大小写在这里也很重要,所以请确保它被称为“HelloWorld.java”,not“Helloworld.java”。
    • 好的。我更好地遵循了您的指示,一切正常。感谢您的帮助。我真的很感激。
    • 每个程序都是Java .class 文件吗?我从未见过这个,OSX 或 PC。是否有另一种编译程序的方法,以便大多数人都可以使用?
    • 我遇到了 textEdit 自动将文件保存为 .rtf (富文本格式)并且不允许 .java 的问题。解决这个问题的方法是在 textEdit do format>makePlainText.
    【解决方案2】:

    我将为您提供编写和编译代码的步骤。 使用这个例子:

     public class Paycheck {
        public static void main(String args[]) {
            double amountInAccount;
            amountInAccount = 128.57;
            System.out.print("You earned $");
            System.out.print(amountInAccount);
            System.out.println(" at work today.");
        }
    }
    
    1. 将代码另存为Paycheck.java
    2. 转到终端并输入cd Desktop
    3. 输入javac Paycheck.java
    4. 输入java Paycheck
    5. 享受你的节目吧!

    【讨论】:

    • 仅供参考,如果您在文件顶部有一个包名称(并且您正在运行单个 java 文件),您将看到 Error: Could not find or load main class <package name>。在这种情况下,只需通过在开头添加两个斜杠来注释掉包
    【解决方案3】:

    下载并安装 Eclipse,一切顺利。
    http://www.eclipse.org/downloads/

    Apple 提供自己的 Java 版本,因此请确保它是最新的。
    http://developer.apple.com/java/download/


    Eclipse 是integrated development environment。它有很多功能,但现阶段与您相关的是:

    • 源代码编辑器
      • 带有语法高亮、颜色和其他视觉提示
      • 轻松交叉引用文档以促进学习
    • 编译器
      • 一键运行代码
      • 在执行过程中收到有关错误/错误的通知

    随着您获得更多经验,您将开始欣赏它的其他丰富功能。

    【讨论】:

    • @David 来自字典,“来自一个天体的光被另一个天体与观察者之间或它与其照明源之间的通道遮蔽:日食”。但在这种情况下,它是一个非常适合 JAVA 开发的 IDE。
    • 您也可以使用 NetBeans 作为替代方案
    【解决方案4】:

    您需要确保您的计算机上存在与 mac 兼容的 java 版本。从终端执行 java -version 进行检查。如果没有,请从苹果网站下载苹果 jdk。 (Sun 不会为苹果自己制作一个,IIRC。)

    从那里,按照与在任何其他平台上用于 ​​java 的编译程序相同的命令行说明进行操作。

    【讨论】:

    • @rob,我认为你低估了我在这一切上的新意。能否请您更简单地解释一下。
    【解决方案5】:

    其他解决方案足以回答您的问题。但是,如果您只需要一个命令来为您执行此操作 -

    在您的 Java 文件所在的目录中创建一个文件名“run”。并将其保存在您的文件中 -

    javac "$1.java"
    if [ $? -eq 0 ]; then
      echo "--------Run output-------"
      java "$1"
    fi
    

    通过运行授予此文件运行权限 -

    chmod 777 
    

    现在您只需运行即可运行任何文件 -

    ./run <yourfilename> (don't add .java in filename)
    

    【讨论】:

      猜你喜欢
      • 2014-02-05
      • 1970-01-01
      • 1970-01-01
      • 2014-06-22
      • 1970-01-01
      • 2011-06-18
      • 1970-01-01
      • 2013-08-04
      相关资源
      最近更新 更多