2017-07-24 64 views
0

我对编码相当陌生,但我在实习中获得了一个微型项目来帮助实现我正在进行的过程的自动化。我知道在Java中这样做的一个相当简单的方法,但唯一的问题是从这个程序中受益的人在他们的计算机上没有IDE。如何在不包含IDE的计算机上运行Java程序?

基本上,我的问题是如何在没有IDE的计算机上运行在Eclipse上创建的程序(尽管它有最新的JRE更新)。我只是真的在教室的封闭箱子里进行编程,所以我从来没有遇到过这个问题,似乎也找不到在线答案。我只需要解释如何在没有IDE的情况下访问并使用程序。

+1

将其编译为字节码,然后在远程计算机上执行它(对于java,使用JVM,java [.exe])。请记住,大多数电脑没有IDE。 – AntonH

+0

创建一个可运行的JAR文件。 – GriffeyDog

+2

创建一个可执行文件。在你的情况下,因为你使用的是Java,所以一个选项是在你的计算机上从IDE创建一个可执行的.jar文件。然后把你的文件放在其他计算机上,他们将能够执行它(只要它们安装了适当的java框架)。编码不是每个人都有IDEs ......恰恰相反!您正在为非开发人员编写代码。 –

回答

1

您需要打包并在jar文件中共享您的代码。 A jar文件将在安装了JRE的任何计算机上运行。

有关如何使用Eclipse做一个简洁的信息,请访问:Creating and sharing a JAR

1

“大厦”可以是一个相当大的问题。首先我假设你安装了JDK或JRE,并且正确地运行。如果你不这样做,那么查看它本身就是一个问题。得到的东西的工作,试试这个:

创建一个名为 “MyClass.java”,看起来像这样的Java文件:

  • 的javac MyClass的:在同一目录下

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

    类型的.java

  • 的java MyClass的

第一个命令创建一个文件MyClass.class来自MyClass.java。第二个执行MyClass.class。如果这不起作用,则可能需要添加“-cp”。到java命令。

这是绝对最简单的情况,当你添加包时它变得更加复杂 - 你开始需要多个目录和一个更真实的类路径。希望得到一些工作后,你会有一个基线,你可以从中找出其余的。

PS。这样做只是为了测试,你应该总是把你的java类放在包里,而不是像我刚刚那样使用“Default”包 - 我只是为了简化第一次运行的目录布局而做的。

编辑:关于寻路

您的路径必须包含你的JDK的bin目录。对于我们的迷你测试,您可以完全路径javac和java(如果您的jdk位于c:\中,它永远不会是c:\ jdk \ bin \ javac)。

为了更简单的解决方案,您可以将其添加到您的路径或建立一个批处理文件。当我正在开发一个小文件的应用程序通常只写一点点.CMD批处理文件或UNIX shell脚本,做下列步骤操作:

  • 设置路径(如路径=%路径%; .. 。JDK \ BIN)(视窗)
  • 编译文件(javac命令我上面给)
  • 运行文件(上面的java命令)

这样一来,至少在开发过程中,我不不会改变系统的路径(批处理文件和shell脚本路径更改在退出时被丢弃),并且由于我大部分都是测试,所以始终使用javac重建并不是真的相对昂贵。

如果您创建没有“javac”步骤的第二个批处理文件/脚本,它将会更快(每次不会编译),并且可以用于实际“运行”完成的应用程序。

这是简化的“构建系统”的开始。如果使用包,则必须为包含文件的每个目录发出javac命令(要一次构建整个目录,应该可以使用javac * .java)。

从长远来看,这并不能很好地扩展,人们开始使用像Ant,Maven和Gradle这样的更大的构建系统(按照优先级递增的顺序),但对于小型单包部署,批处理文件是可以接受的。

+0

我收到错误 “'javac'未被识别为可操作的程序或批处理文件。” 当我运行“javac HelloWorld.java”和错误 “Error:找不到或加载主类HelloWorld” 当我运行“java HelloWorld”时 –

+0

JDK bin目录必须是在你的类路径中,并且必须包含java.exe和javac.exe。我会在解决方案中添加一个注释。 –

相关问题