[英]Groovy script "unexpected token" with @ directive
這讓我完全困惑。
規格:Linux Mint 18.3、Java 11、Groovy 2.5.9。
這些文件位於 NTFS 格式的分區上可能很有趣。
我用一個簡單的@Grab 制作了一個簡單的 Groovy 腳本文件:
package test;
@Grab(group='org.apache.commons', module='commons-lang3', version='3.7')
println "bye"
...失敗:
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
/media/chris/W10 D drive/My Documents/software projects/EclipseWorkspace/GroovyExp2020-03-08/src/test/testscript.groovy: 5: unexpected token: println @ line 5, column 1.
println "bye"
^
1 error
如果我注釋掉@Grab
行,它運行正常。
如果我這樣編寫腳本:
package test
def bosh = "jellow world"
bosh = "bash"
@Grab(group='org.apache.commons', module='commons-lang3', version='3.7')
bosh = "bish"
...投訴,標記為最后一行,更改為“Groovy:當前范圍已經包含名稱為 bosh 的變量”(!)。
如果我在 Grab 行的末尾放一個分號:
package test;
@Grab(group='org.apache.commons', module='commons-lang3', version='3.7');
println "bye"
...投訴變成“意外的令牌:;”
至今莫名其妙莫名其妙。 然而,更奇怪的是,我現有的一些腳本仍然可以正常工作:我可以像上面那樣插入@Grab
行,而不會抱怨“意外令牌”。
這不是 Eclipse 生成的廢話:我在 Linux CLI 上遇到了同樣的問題。
您不能只是在 groovy(或 Java)中的任何地方粘貼注釋
您需要注釋一個類、方法或字段
在您的示例中,您正在注釋變量賦值(不起作用)和方法調用(也不起作用)
將注解移至文件頂部或類定義
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.