【问题标题】:Show Java build results in gnome-terminal with Sublime Text 3使用 Sublime Text 3 在 gnome-terminal 中显示 Java 构建结果
【发布时间】:2015-03-06 13:19:39
【问题描述】:

我想通过 Sublime Text 3 在终端中编译和运行 Java 程序,而不是使用像 Eclipse 这样的 IDE。我已经编辑了Java.sublime-build 文件来执行此操作,但它不起作用。当我启动构建系统时,gnome-terminal 会打开一段时间然后崩溃。

这是我编辑的.sublime-build

{
"cmd": ["gnome-terminal -x bash -c\"javac ${file_name} && java ${file_base_name}; exec bash\""],
"selector": "source.java",
"shell":true,
"working_dir": "$file_path"
}

我还需要进行哪些其他更改才能让它为我编译 Java 程序?

【问题讨论】:

  • “崩溃”是什么意思?你有任何输出吗?也许添加“sleep 60”等会有所帮助,这样您就可以在 shell 终止之前看到输出。
  • @Clemens Klein-Robbenhaar 对不起,我不知道这是真正的崩溃还是正常的关闭方式。它几乎同时打开然后关闭。
  • 这就是为什么我建议添加一个“sleep 60”来让他的窗口再打开 60 秒,比如-c\"javac ${file_name} && java ${file_base_name}; sleep 60\"
  • 用你的方法试过了,还是不行,同样的问题。
  • sleep 60 应该不能解决问题。它应该做的就是让终端窗口保持打开 60 秒,以便您可以看到错误消息。也许-c\"javac ${file_name} && java ${file_base_name} || sleep 60; exec bash\" 效果更好(虽然我不知道exec bash 在那里真正做了什么......)

标签: java sublimetext3


【解决方案1】:

试试这个。

{
    "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。

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

【讨论】:

    猜你喜欢
    • 2015-06-08
    • 2013-03-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-14
    • 1970-01-01
    • 1970-01-01
    • 2016-11-29
    相关资源
    最近更新 更多