build.xml
파일 내부에서 groovyc
을 실행하려고합니다.Ant build.xml에서 groovyc를 실행할 수 없습니다.
myapp/
src/main/java
<Some Java sources>
src/main/groovy
DemoController
lib/main
groovy-all-2.2.2.jar
servlet-2.4.jar
gen
bin
dist
가 여기 내 compile
대상입니다 : 여기 내 프로젝트 디렉토리 구조 년대 src/main/groovy
에서, 내 코드에서
<?xml version="1.0"?>
<project name="myapp" default="compile" basedir=".">
<path id="groovy-path">
<fileset dir="lib/main" includes="groovy-all-2.2.2.jar" />
</path>
<taskdef name="groovyc"
classname="org.codehaus.groovy.ant.Groovyc"
classpathref="groovy-path" />
<!-- Other targets omitted for brevity... -->
<target name="compile" depends="init">
<echo message="Compiling Java sources..." />
<javac destdir="gen/bin" includeantruntime="false">
<src path="src/main/java" />
<src path="lib/main" />
</javac>
<echo message="Compiling Groovy sources..." />
<groovyc destdir="gen/bin">
<src path="src/main/java" />
<src path="src/main/groovy" />
<src path="lib/main" />
</groovyc>
</target>
</project>
, 나는 그루비 클래스 DemoController
라고 있습니다
package com.ar.myapp.controllers
import javax.servlet.http.HttpServlet
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
class DemoController extends HttpServlet {
@Override
void doGet(HttpServletRequest request, HttpServletResponse response) {
String resp = "Hello, Groovy!";
response.getWriter().write(resp);
}
}
이클립스에서 (Groovy 플러그인을 설치하고이 코드를위한 Groovy 프로젝트를 만들었습니다.) 컴파일러 오류나 적색 플래그가 보이지 않습니다. 나는 개미 compile
대상을 실행할 때, 나는 다음과 같은 예외 얻을 : 나는 lib/main/servlet-2.4.jar
을 열 때
compile:
[echo] Compiling Java sources...
[javac] Compiling 1 source file to /home/myuser/sandbox/eclipse/workspace/myapp/gen/bin
[echo] Compiling Groovy sources...
[groovyc] Compiling 1 source file to /home/myuser/sandbox/eclipse/workspace/myapp/gen/bin
[groovyc] org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
[groovyc] /home/myuser/sandbox/eclipse/workspace/myapp/src/main/groovy/com/myapp/controllers/DemoController.groovy: 3: unable to resolve class javax.servlet.http.HttpServlet
[groovyc] @ line 3, column 1.
[groovyc] import javax.servlet.http.HttpServlet
[groovyc] ^
[groovyc]
[groovyc] /home/myuser/sandbox/eclipse/workspace/myapp/src/main/groovy/com/myapp/controllers/DemoController.groovy: 4: unable to resolve class javax.servlet.http.HttpServletRequest
[groovyc] @ line 4, column 1.
[groovyc] import javax.servlet.http.HttpServletRequest;
[groovyc] ^
[groovyc]
[groovyc] /home/myuser/sandbox/eclipse/workspace/myapp/src/main/groovy/com/myapp/controllers/DemoController.groovy: 5: unable to resolve class javax.servlet.http.HttpServletResponse
[groovyc] @ line 5, column 1.
[groovyc] import javax.servlet.http.HttpServletResponse;
[groovyc] ^
[groovyc]
[groovyc] 3 errors
내가 실제로 Http*
클래스 패키지 보는가 어디 그들은 (javax.servlet.http
아래)되어야한다. 이 groovyc
의 경로에 추가되지 않은 경우이 오류를 이해할 수 있지만 이는 의미가 없습니다. 여기서 무슨 일이 일어나고있는거야?
이 아닌' 의'''이어야한다 마디? http://stackoverflow.com/questions/1575220/problems-with-setting-the-classpath-inantant를 참조하십시오. –