2015-10-06 57 views
-1

我试图建立一个构建,以便我可以在崇高3中编译和运行Java。我的构建系统不工作。Java Build in Sublime 3

"cmd": "java ${file_name} && java ${file_base_name}", 
"file_regex": "^[ ]file \"(...?)\", line ([0-9]*)", 
"path":"C:\\ProgramData\\Oracle\\Java\\javapath\\java.exe", 
"selector": "source.java", 
"shell":true 

我有这个构建保存到我的包,它出现在生成菜单,但是当我尝试运行它时,它说没有生成工作。

+2

'javac'是Java编译器... – MattDMo

回答

1

有关如何构造.sublime-build文件的信息,请阅读build system documentation"cmd""path"是列表,而不是字符串,所以这是您可能会收到错误的原因之一。正如我在评论中提到的,另一个原因是您正在尝试使用java而不是javac来编译您的.java文件。最后,您的"path"不正确—它应指向目录列表,而不是文件。这可能对你更好:

{ 
    "cmd": ["javac", "${file_name}", "&&", "java", "${file_base_name}"], 
    "file_regex": "^[ ]file \"(...?)\", line ([0-9]*)", 
    "path": ["C:\\ProgramData\\Oracle\\Java\\javapath"], 
    "selector": "source.java", 
    "shell": true 
} 
+0

在我的情况下,路径指向'C:\\ Program Files \\ Java \\ jdk1.8.0_66 \\ bin \\'。但请注意,Sublime Text可能不适合运行Java代码。 [崇高文本论坛3](https://forum.sublimetext.com/t/using-sublime-text-3-as-a-java-ide/14156)为此提供了解释。 –

+0

@SoS我完全同意Sublime不是Java IDE的最佳选择,尽管['Javatar'](https://packagecontrol.io/packages/Javatar)插件可以改善这一点。特别是对于初学者,Eclipse或IntelliJ或Netbeans或其他更好的选择,因为它们提供更好的代码智能,内联文档,导入组织以及编译复杂项目的能力。 – MattDMo

0

试试这个。它适用于Linux。不确定Windows。

{ 
    "cmd": ["javac '$realpath$file' && java $file_base_name && rm *.class"], 
    "selector": "source.java", 
    "shell": true, 
    "variants": [ 

     { 
      "name": "JavaDoc", 
      "cmd": ["mkdir documentation && javadoc -d documentation *.java"] 
     }, 

     { 
      "name": "JAR", 
      "cmd": ["javac '$realpath$file' && echo \"Main-Class: $file_base_name\" > Manifest.txt && jar cfm $file_base_name.jar Manifest.txt *.class && rm *.class && java -jar $file_base_name.jar"] 
     }, 


    ] 
} 

这对我的作品在Linux上,可以在Github在Java.sublime-build

有趣的下载是它也编译文件JAR。编译后删除类,以使整洁的东西,它也支持生成JavaDocs。

唯一的限制是它不能在编译时接受用户输入或参数。您必须在终端中手动执行此操作。