Обработка программных споров с помощью плагина Groovy Eclipse v2 - PullRequest
1 голос
/ 29 сентября 2011

Мне интересно, как обрабатывать программные аргументы, когда вы запускаете Groovy в Eclipse.Это не так просто, как из командной строки, и мне трудно разобраться.Я использую Eclipse 3.5.Моя конфигурация запуска имеет все эти аргументы в одной строке:

--classpath "${workspace_loc:/GroovyProject};${workspace_loc:/GroovyProject}" 
--main groovy.ui.GroovyMain "C:\Temp\Workspace\GroovyProject\GroovyTest.groovy " 
argtest1 
argtest2 
argtest3

Сценарий, который я использую, чтобы попытаться сделать эту работу, выглядит следующим образом:

// GroovyTest.groovy
class GroovyTest {      
  static main(args) {
    println "hello, world"
    for (arg in this.args ) {
      println "Argument:" + arg;
    }       
  } 
}

Полученная ошибка:

hello, world
Caught: groovy.lang.MissingPropertyException: No such property: args 
for class: GroovyTest at GroovyTest.main(GroovyTest.groovy:5)

1 Ответ

1 голос
/ 29 сентября 2011

В строке for (arg in this.args) есть ненужное az this.

this.args означает, что у вас есть экземпляр объекта GroovyTest, и вы ссылаетесь на его поле args. В этом случае args является параметром метода, поэтому вы должны ссылаться на него просто как args.

...