' 在根项目 'project_name' 中找不到。一些候选人是:'fatJar'
' not found in root project 'project_name'. Some candidates are: 'fatJar'
I 运行 Windows 10 bash.exe 到 运行 bash 脚本。我面临一个有线的情况,如果我在 bash 中添加低于 gradle fatJar
的任何内容,它会引发错误。
Bash 脚本:(不工作)
#!/usr/bin/env bash
rm -rf build
gradle fatJar
echo 'Success'
' not found in root project 'project_name'. Some candidates are:
'fatJar'.
Bash 脚本:(工作中)
#!/usr/bin/env bash
rm -rf build
gradle fatJar
为什么我无法在 gradle fatJar
下面添加任何内容?这仅发生在 Windows 10 bash。在 mac 中,两者都工作正常。
我自己想出来了。希望这个回答能对某人有所帮助。
经过一番尝试后,我发现如果我使用 &&
将所有内容写在一行中,一切正常,例如:rm -rf build&&gradle fatJar&&echo 'Success'
然后我意识到换行符有些问题。它正在添加 \r
到永远的换行符。
经过一番研究,我找到了原因。发生这种情况是因为我在 Mac IntelliJ 中提交了文件,后来我在 Windows IntelliJ 中编辑了文件,最后一次编辑将 bash 文件的行分隔符格式更改为 CRLF Windows (\r\n)
这是在每个换行符内部添加 \r
。
我将行分隔符更改为 LF UNIX and OS X (\n)
并且 boom 一切都按预期工作。
要在 IntelliJ 中更改行分隔符,请遵循 here and for others here
I 运行 Windows 10 bash.exe 到 运行 bash 脚本。我面临一个有线的情况,如果我在 bash 中添加低于 gradle fatJar
的任何内容,它会引发错误。
Bash 脚本:(不工作)
#!/usr/bin/env bash
rm -rf build
gradle fatJar
echo 'Success'
' not found in root project 'project_name'. Some candidates are: 'fatJar'.
Bash 脚本:(工作中)
#!/usr/bin/env bash
rm -rf build
gradle fatJar
为什么我无法在 gradle fatJar
下面添加任何内容?这仅发生在 Windows 10 bash。在 mac 中,两者都工作正常。
我自己想出来了。希望这个回答能对某人有所帮助。
经过一番尝试后,我发现如果我使用 &&
将所有内容写在一行中,一切正常,例如:rm -rf build&&gradle fatJar&&echo 'Success'
然后我意识到换行符有些问题。它正在添加 \r
到永远的换行符。
经过一番研究,我找到了原因。发生这种情况是因为我在 Mac IntelliJ 中提交了文件,后来我在 Windows IntelliJ 中编辑了文件,最后一次编辑将 bash 文件的行分隔符格式更改为 CRLF Windows (\r\n)
这是在每个换行符内部添加 \r
。
我将行分隔符更改为 LF UNIX and OS X (\n)
并且 boom 一切都按预期工作。
要在 IntelliJ 中更改行分隔符,请遵循 here and for others here