java - 如何使 Sublime 编译文件到特定目录?
问题描述
我的老师给了我们一个他自己编写的脚本,供我们用来编译 Java。我以特定的方式组织文件夹(与我们老师的不同),因为我喜欢自己的组织方式。
我的文件夹结构:
prg/
├─ EasyGraphics.java
├─ class/
│ ├─ lab/
│ ├─ lesson/
│ ├─ GraphicsLesson.java
├─ libraries/
├─ eg/
他给我们的剧本:
{
"cmd": ["javac \"-Xlint:none\" \"-cp\" \".:..\" \"-encoding\" \"utf8\" \"$file_name\" "],
"shell": "true",
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.java",
"variants":
[
{
"name": "Run",
"cmd": ["java \"-cp\" \".:..\" \"$file_base_name\" "],
"shell": "true"
}
]
}
当我将 EasyGraphics 放在不同的文件夹中时,该脚本给我带来了麻烦,因此我将其编辑为:
"cmd": ["javac \"-Xlint:none\" \"-cp\" \"./../../../.\" \"-encoding\" \"utf8\"
"cmd": ["java \"-cp\" \"./../../../.\" \"$file_base_name\" "]
当我编译GraphicsLesson.java
它时,它会在目录中创建大量文件,prg
但我想在其中创建它们/libraries/eg
- 我该如何实现?
到目前为止,我已经尝试过:
"cmd": ["javac \"-Xlint:none\" \"-cp\" \"./../../../.:libraries/eg\" \"-encoding\" \"utf8\"
"cmd": ["javac \"-Xlint:none\" \"-cp\" \"./../../../.:/libraries/eg\" \"-encoding\" \"utf8\"
"cmd": ["javac \"-Xlint:none\" \"-cp\" \"./../../../.\/libraries/eg\" \"-encoding\" \"utf8\"
还有更多,但似乎没有任何效果。
任何帮助是极大的赞赏。谢谢。
解决方案
好的,所以我设法弄清楚如何将其提取到单个子目录而不是子目录中的子目录:
"cmd": ["javac \"-Xlint:none\" \"-cp\" \".:../../.././dir:../dir:../../dir\" \"-encoding\" \"utf8\" \"$file_name\" "],
"shell": "true",
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.java",
"variants":
[
{
"name": "Run",
"cmd": ["java -cp .:../../.././dir:../dir:../../dir $file_base_name "],
"shell": "true"
}
]
}
推荐阅读
- android - Debug 似乎没有显示 AndroidManifest 图标
- java - Android:如何同时打开多个USB端口
- visual-studio-2015 - 尝试使用 MsBuild 构建时,我们无法恢复解决方案中使用的 nuget 包
- python - Python zip 函数使用
- c# - 如何在 c# 中的 @Model.Value 中包含 id 和 name 属性?
- swift - 如何在 CollectionView 单元内向图像添加渐变层
- prediction - 预测和时间序列
- salesforce-lightning - 防止在 LWC 上重新定位事件
- android - Firebase 远程配置服务器值与默认值相同吗?
- java - 如何将迭代计数值设置为java中的一个字段