Проблема у меня больше, но я упрощу концепцию, которая терпит неудачу.Groovy скрипт не может импортировать код Java
Я работаю над Ubuntu.
Вот моя структура каталогов:
~/MyDirectory
-/заводной
-/myjavafiles
У меня есть сценарий, script.groovy, который живет внутри ~/mydirectory/groovy и java-файл Hello.java, который живет внутри ~/mydirectory/myjavafiles. script.groovy имеет следующий внутри:
#!/usr/bin/env groovy
package groovy;
import myjavafiles.Hello;
println("hello");
Hello.java имеет это:
package myjavafiles;
public class Hello {
public Hello() {
System.out.println("hello");
}
}
Я попытался запустить:
$./script.groovy
как хорошо, как
$groovy script.groovy
Но Я получаю сообщение об ошибке «невозможно найти класс».
Вот шаги, я взял, чтобы исправить эту ошибку:
я. set CLASSPATH = ~/mydirectory, это не сработало.
ii. использовано
$jar cf myjavafiles.jar myjavafiles
и размещено myjavafiles.jar в ~/.groovy/lib, это не сработало.
iii. Как уже упоминалось here, я попытался изменить groovy.script следующим образом:
#!/bin/bash
//usr/bin/env groovy
package groovy;
import myjavafiles.Hello;
println("hello");
Это тоже не сработало.
Другое, возможно, отношение
Если это любая помощь, я использую Ubuntu, Java 7 и Groovy 2.1.5
GROOVY_HOME =/опт/заводной/заводной-2.1.5/
и $ GROOVY_HOME/bin находится в моем PATH
Я очень благодарен за любую помощь.
[Как упомянуто Тим] (http://stackoverflow.com/ a/17300114/459743), вы объявляете свой класс java в одном пакете, но пытаетесь импортировать его из другого. – codelark