我有一个横跨多个源目录的大型项目,该项目是在过去15年中使用eclipse和自定义外部工具配置开发的,用于从源目录中的任何地方的build.xml文件启动ant任务(我知道这很混乱!)
由于日常工作主要是基于xml和JavaScript的,我认为VSCode是一个轻量级的替代品(因为eclipse无法在不超过HeepSpace的情况下处理大型xml文件)。在我看来,任务运行器是一种将ant构建集成到编辑器中的好方法,它们也被宣传为能够运行ant构建:
例如Make, Ant, Gulp, Jake, Rake和MSBuild等等。
我可以用根文件夹中的build.xml运行ant构建。然而,这不是项目的结构。
是否有办法从不同于工作空间根目录的目录运行任务命令(在我的情况下是ant) ?
我想到了git的GIT_WORK_TREE
环境变量或执行两个命令的方法(如cd {{build.xml folder}} && ant
)。我当前的任务。json是
{
"version": "0.1.0",
"command": "ant",
"isShellCommand": true,
"showOutput": "silent",
"args": ["all", "jar"],
"promlemMatcher": "" // I'm also not sure what to put here,
// but that's another question
}
(顺便说一下,我在windows上,但来自linux/osx,对这里的工作方式有点陌生)
您可以定义要使用的cwd目录。这是这样做的:
{
"version": "0.1.0",
"command": "ant",
"isShellCommand": true,
"options": {
"cwd": "My folder to run in"
}
}
tasks.json
文件的定义见https://code.visualstudio.com/Docs/editor/tasks_appendix