2015-01-14 123 views
0

在Intellij中,当我在具有public static void main方法的类上运行java项目(通过CTRL + SHIFT + F10)时,项目按预期运行。现在,我想运行这个相同的文件/项目,但在命令行上。此外,我希望能够更新此文件并重新运行它。如何从命令行运行intellij Java项目?

我复制了Intellij输出到控制台的命令,并在终端上粘贴了该命令。命令看起来是这样的:

/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home/bin/java -Didea.launcher.port=7532 "-Didea.launcher.bin.path=/Applications/IntelliJ IDEA 14 CE.app/Con ......(这是一个疯狂长的命令)

比方说,我的文件看起来像这样:

public class Main { 
    public static void main(String...args){System.out.println("hi");} 
} 

==>输出“喜“当我运行命令。

虽然此命令在终端上运行得很好,但它不会接收对该文件的任何更新。如果我保存该文件,则会运行先前的缓存文件。

即我们现在说我修改该文件是:

public class Main { 
    public static void main(String...args){System.out.println("GOOD BYE");} 
} 

==>输出仍然是“喜”。即使我保存该文件。

我从主目录运行命令。

如何获取命令来获取我的更改?

如果我再次从intellij运行更新后的文件,它会给出与先前相同的命令(当然,除端口更改外)。

============================================== ==========================

更新:

没关系,它看起来像命令运行只是一个.class文件。但我仍然看不到用于构建.class文件的命令。我该怎么做呢?

+0

我建议你打开线包装一会儿。然后,您将看到IntelliJ为您所在的Hello World项目所做的大量工作。 – Makoto

+0

@Makoto它看起来像是运行项目的命令。到那时,'.class'文件已经生成。我怎么看Intellij做什么来生成这个'.class'文件? –

回答

3

如果您想查看更改,则需要在运行之前重建项目。您可以使用javac,但我建议您使用像maven或gradle这样的构建工具。

一旦你重建了你的项目,你可以运行最新版本。

您还可以创建一个脚本,它在像IntelliJ那样运行它之前首先编译您的程序。

+1

这是一个gradle项目。然而,我似乎无法弄清楚如何使用“gradlew”生成.class文件。任何帮助? –

+1

好吧,我想通了。是的,我们使用gradle –