我正在尝试在Sublime Text 2中编译和运行Java代码。不要只是告诉我在命令提示符下手动进行操作。谁能告诉我如何?
顺便说一句,我在Windows 7上...
我正在尝试在Sublime Text 2中编译和运行Java代码。不要只是告诉我在命令提示符下手动进行操作。谁能告诉我如何?
顺便说一句,我在Windows 7上...
CLASSPATH
和/或传递cp
开关的程序均不起作用。每当您要在不同的项目上工作时,您要么需要修改构建系统,要么找到其他解决方案(只有受虐狂的社会病魔才会CLASSPATH
每次在OS级别上修改变量)。
Answers:
这就是我添加到JavaC.sublime-build文件中的内容
{
"cmd": ["javac", "-Xlint", "$file"],
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.java",
"variants": [
{ "cmd": ["javac", "-Xlint", "$file"],
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.java",
"name": "Java Lintter"
},
{ "cmd": ["java", "$file_base_name"],
"name": "Run Java"
}
]
}
它的作用是创建常规构建命令(ctrl+b)的变体。使用ctrl+,b您仍然可以编译您的代码。如果执行shift+ ctrl+ b,将执行第一个变体,在这种情况下,它是带有-Xlint选项的javac。第二个也是最后一个变体是java命令本身。您可以将其作为第一个变体,而shift+ ctrl+b实际上将执行Java代码。
另外,请注意,每个变体都作为“名称”。这基本上允许该特定的“ build”选项显示在shift+ ctrl+p选项中。因此,使用此配置,您只需执行shift+ ctrl+p并键入“ Run Java”并点击enter,您的代码就会执行。
希望这会有所帮助。
Run Java
为Run
现在正在ctrl+shift+b
执行程序。
*.sublime-build
文件?
我发现使用Sublime Text 2编译和运行Java程序一文中的方法效果很好,并且比其他方法方便一些。这是到存档页面的链接。
runJava.bat
使用以下代码创建。
@ECHO OFF
cd %~dp1
ECHO Compiling %~nx1.......
IF EXIST %~n1.class (
DEL %~n1.class
)
javac %~nx1
IF EXIST %~n1.class (
ECHO -----------OUTPUT-----------
java %~n1
)
将此文件复制到jdk bin目录。
"cmd": ["javac", "$file"],
"cmd": ["runJava.bat", "$file"],
做完了!
编写程序并使用运行 CTRL + B
注意:Sublime 3的说明不同。
Sublime Text 3的解决方案略有不同。这是我以前使用的vijay答案的修改。
{
"shell_cmd": "javac -Xlint \"${file}\"",
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"working_dir": "${file_path}",
"selector": "source.java",
"variants":
[
{
"name": "Run",
"shell_cmd": "java \"${file_base_name}\""
}
]
}
将以上内容粘贴到一个名为的新文件中JavaC.sublime-build
,并将其放入您的用户包中。可以在中找到C:\Users\You\AppData\Roaming\Sublime Text 3\Packages\User
。
Ctrl-B将编译。Ctrl-Shift-B将运行。
根据vijay的答案编辑的JavaC.sublime-build版本对Windows 7和Mac上的Sublime Text 3均适用。
我对其进行了编辑,因此Ctrl + b或command + b足以满足构建和运行的需要。
{
"shell_cmd": "javac -Xlint $file && java $file_base_name",
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.java",
"shell": true
}
“ &&”确保第二部分仅在第一部分成功时(即仅在生成类文件时)运行。您可以在这里找到更多相关信息:http : //www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/ntcmds_shelloverview.mspx?mfr=true
shell_cmd
,则该解决方案也适用于崇高的文字2 cmd
。这是唯一对我有用的解决方案。谢谢。
步骤1: 如您所知或为某个地方引用Java设置环境变量
strp-2: 打开新文档并在下面复制粘贴代码
{
"cmd": ["javac", "$file_name", "&&", "java", "$file_base_name"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.java",
"shell":true }
步骤3: 将文档另存为userjavaC.sublime-build,位于目录C:\ Users \ myLapi \ AppData \ Roaming \ Sublime Text 3 \ Packages \ User中
第四步:
完成后选择工具->构建系统-> userjavaC
编译并运行按ctrl + b
我正在使用Windows7。以下解决方案适用于我!
**Open** the file JavaC.sublime-build and replace all the code in the file with the code below:
{
"cmd": ["javac", "$file_name","&&","java", "$file_base_name"],
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
**"path": "C:\\Program Files\\Java\\jdk1.6.0\\bin\\",**
"selector": "source.java",
"shell": true
}
切记将“ C:\ Program Files \ Java \ jdk1.6.0 \ bin \”替换为放置jdk的路径。并确保将Java JDK的路径添加到环境变量“ PATH”。请参阅bunnyDrug的文章来设置环境变量。最好!!
请参阅以下解决方案: 网址 http //www.compilr.org/compile-and-run-java-programs/
希望能解决在sublime中编译和运行类的问题.....您可以在注释部分中查看我的脚本,以在使用Mac的情况下进行尝试...
编辑:不幸的是,以上链接现在已断开。它详细介绍了在Sublime文本中编译和运行Java所需的所有步骤。无论如何,对于Mac或Linux系统,以下应该可以工作:
修改javac.sublime-build文件为:
#!/bin/sh
classesDir="/Users/$USER/Desktop/java/classes/"
codeDir="/Users/$USER/Desktop/java/code/"
[ -f "$classesDir/$1.class" ] && rm $classesDir/$1.class
for file in $1.java
do
echo "Compiling $file........"
javac -d $classesDir $codeDir/$file
done
if [ -f "$classesDir/$1.class" ]
then
echo "-----------OUTPUT-----------"
java -cp $classesDir $1
else
echo " "
fi
在这里,我在桌面上创建了一个名为“ java”的文件夹,并分别创建了用于维护.class和.java文件的子文件夹“ classes”和“ code”,您可以按照自己的方式进行修改。
如此处详述:
http://sublimetext.userecho.com/topic/90531-default-java-build-system-update/
我采取的补救措施
点击开始
右键点击“计算机”
2.5单击属性。
在左侧选择“高级系统设置”
在底部附近,单击“环境变量”
向下滚动“系统变量”,直到找到“路径”-单击选中此选项的编辑。
将路径添加到Java bin文件夹。我的最终看起来像这样:
代码:全选
; C:\ Program Files \ Java \ jdk1.7.0_03 \ bin \
对于
“ C:\ Program Files \ Sublime Text 3 \ Packages”中的Sublime Text 3,您将得到java.sublime-package将其复制到另一个文件夹,将其扩展名从.sublime-package更改为zip并将其解压缩,您将得到JavaC.sublime-build文件进行上述修改。
经过所有修改后,提取的java文件夹再次转换为.zip并将其扩展名.zip更改为.sublime-package。之后,将该文件复制并粘贴到C:\ Program Files \ Sublime Text 3 \ Packages。
这会帮助你!
(即使您从http://upfile.mobi/363820或http://www.4shared.com/file/73SkzY-Kba/Java.html链接中获取我的文件,我也使用该链接来运行Java代码,我使用“ Wesley Baugh的把戏”,因此您需要按照他所说的将runJava.bat文件复制到C:\ Program Files(x86)\ Java \ jdk1.8.0 \ bin目录中,然后将上述链接文件复制到C:\ Program Files \ Sublime Text 3 \ Packages )
您可以完全在ST中编译和运行代码,它非常快速/简单。最近有一个名为Javatar的ST软件包可以做到这一点。 https://javatar.readthedocs.org
这是在崇高的文字3中编译和运行Java的代码
“ shell_cmd”:“ javac -d。$ file && java $ {file_base_name}。$ {file_base_name}”,“ shell”:true
我在此线程中关注了一个帖子,并使其完美运行:
使用以下命令制作bat文件,并将其保存在PATH中的任何位置。我建议使用C:\ Program Files \ Java \ jdk * \ bin \将所有内容保持在一起。
@ECHO OFF
cd %~dp1
javac %~nx1
java %~n1
然后编辑C:\ Users \您的用户名\ AppData \ Roaming \ Sublime Text 2 \ Packages \ Java \ JavaC.sublime-build,内容将是
{
"cmd": ["javac", "$file"],
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.java"
}
用您的bat文件的名称(例如javacexec.bat)替换“ javac”并保存。
通过执行以下步骤,您将拥有2个高级构建系统-“ JavaC”和“ JavaC_Input”。
“ JavaC”使您可以运行不需要用户输入的代码,并将结果显示在sublime的终端模拟器中,这既方便又美观。“ JavaC_Input”使您可以在单独的终端窗口中运行需要用户输入的代码,它可以接受用户输入。您还可以在此构建系统中运行不需要输入的代码,因此,如果您不介意弹出窗口,则可以坚持使用此构建系统,而无需进行切换。您可以从工具->构建系统在构建系统之间切换。然后使用ctrl + b编译并运行代码。
以下是实现此目的的步骤:
(注意:确保您已经具有Java系统的基本设置:安装JDK并设置正确的CLASSPATH和PATH,我不会在此赘述)
“ JavaC”构建系统设置
1,使用以下代码制作一个bat文件,并将其保存在C:\ Program Files \ Java \ jdk * \ bin \下,以使所有内容保持一致。将文件命名为“ javacexec.bat”。
@ECHO OFF
cd %~dp1
javac %~nx1
java %~n1
2,然后编辑C:\ Users \您的用户名\ AppData \ Roaming \ Sublime Text 2 \ Packages \ Java \ JavaC.sublime-build(如果没有,请创建一个),内容将是
{
"cmd": ["javacexec.bat", "$file"],
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.java"
}
“ JavaC_Input”构建系统设置
1,安装Cygwin [ http://www.cygwin.com/]
2,转到C:\ Users \您的用户名\ AppData \ Roaming \ Sublime Text 2 \ Packages \ Java \,然后创建一个名为“ JavaC_Input.sublime-build”的文件,内容如下
{
"cmd": ["javacexec_input.bat", "$file"],
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.java"
}
3,使用以下代码制作一个bat文件,并将其保存在C:\ Program Files \ Java \ jdk * \ bin \下,以使所有内容保持一致。将文件命名为“ javacexec_input.bat”。
@echo off
javac -Xlint:unchecked %~n1.java
start cmd /k java -ea %~n1
{
"shell_cmd": "javac -Xlint \"${file}\"",
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"working_dir": "${file_path}",
"selector": "source.java",
"variants": [
{ "shell_cmd":"javac -Xlint \"${file}\" && java $file_base_name < input.txt > output.txt",
"name": "Run"
}
]
}
保存此高级版本并使用ctrl + shift + B运行带有run变体的程序。没有run变体,它将仅创建.class文件,但不会运行它。
该版本将从input.txt中读取输入,并将输出打印在output.txt中。
注意:input.txt和output.txt都必须与.java文件位于同一工作目录中。
Alex Yao的答案是最简单的解决方案,如果您只想构建和运行Java程序而无需从控制台获取任何输入,请使用Alex Yao提供的解决方案。但是,如果您想从控制台获取输入,请参考以下链接
这是我的,使用崇高文字3。我需要一个选项来在新窗口中打开命令提示符。Java编译与-Xlint
用于打开Java中警告的完整消息的选项一起使用。
我已将文件保存在用户包文件夹中,名称为Java(Build).sublime-build
{
"shell_cmd": "javac -Xlint \"${file}\"",
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"working_dir": "${file_path}",
"selector": "source.java",
"variants":
[
{
"name": "Run",
"shell_cmd": "java \"${file_base_name}\"",
},
{
"name": "Run (External CMD Window)",
"shell_cmd": "start cmd /k java \"${file_base_name}\""
}
]
}
构建系统JavaC就像一个超级按钮一样工作,但是当您希望以Sublime文本形式从stdin提供输入时,它会失败。但是您可以编辑构建系统以使其从用户那里接收输入。这是我在Ubuntu 18.04 LTS上使用的经过修改的JavaC构建。您可以编辑构建系统或创建新的构建系统。
创建一个新的构建系统。
复制粘贴以下代码,然后单击文件>>保存。
{
"shell_cmd": "javac \"$file\"",
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.java",
"variants":
[
{
"shell_cmd":"bash -c \"javac $file\" && gnome-terminal -- bash -c \"java $file_base_name ;read\"",
"name": "Run"
}
]
}
编辑现有的Java C构建文件
这就是我通过以下简单步骤完成的操作:
设置一个新的构建系统:
工具>构建系统>新构建系统
将默认代码替换为以下代码:
{
"cmd": ["javac","$file_name","&&","java","$file_base_name"],
"path": "C:\\Program Files\\Java\\jdk1.7.0_25\\bin\\",
"shell": true
}
// locate the path of your jdk installation and replace it with 'path'
通过命名来保存文件(我将其命名为“ Java”)
激活构建系统: