2012-08-17 65 views
1

當試圖建立我的Struts應用程序構建Struts應用程序,我得到以下錯誤:錯誤而使用Ant

compile: 
    [javac] /media/Data/Struts 2/2012-05-02/Struts/src/Build.xml:5: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds 
    [javac] Compiling 2 source files 
    [javac] MyAction.java:5: package org.apache.struts2.interceptor does not exist 
    [javac] import org.apache.struts2.interceptor.SessionAware; 
    [javac]         ^
    [javac] MyAction.java:7: package com.opensymphony.xwork2 does not exist 
    [javac] import com.opensymphony.xwork2.ActionSupport; 
    [javac]        ^
    [javac] MyAction.java:10: cannot find symbol 
    [javac] symbol: class ActionSupport 
    [javac] public class MyAction extends ActionSupport implements SessionAware { 
    [javac]        ^
    [javac] MyAction.java:10: cannot find symbol 
    [javac] symbol: class SessionAware 
    [javac] public class MyAction extends ActionSupport implements SessionAware { 
    [javac]              ^
    [javac] MyAction.java:22: cannot find symbol 
    [javac] symbol : method addActionError(java.lang.String) 
    [javac] location: class com.sp.action.MyAction 
    [javac]   addActionError("invalid"); 
    [javac]  ^
    [javac] MyAction.java:47: cannot find symbol 
    [javac] symbol : method addActionError(java.lang.String) 
    [javac] location: class com.sp.action.MyAction 
    [javac]    addActionError("User Name ,pass cannot be error"); 
    [javac]   ^
    [javac] MyAction.java:43: method does not override or implement a method from a supertype 
    [javac]  @Override 
    [javac] ^
    [javac] 7 errors 

BUILD FAILED 

我的包層次是src/com/sp/action/*.javasrc/com/sp/domain/*.java

我的構建文件如下:

<?xml version="1.0" encoding="UTF-8"?> 
<project name="strutsComple" default="compile"> 
    <target name="compile"> 
     <fileset dir="/media/Data/Works/struts-2.3.1.2/lib/" includes="*.jar"/> 
     <javac srcdir="./com/sp/"/> 
    </target> 
</project> 

我已經將兩個必需的罐子添加到我的Eclipse文件夾。

有人能請我指點我失蹤的東西嗎?

回答

1

你的螞蟻建立文件是簡單。將struts jar導入eclipse對你的ant構建不起任何作用。您需要在build.xml中爲javac配置類路徑。

<fileset dir="/media/Data/Works/struts-2.3.1.2/lib/" includes="*.jar"/> 
<javac srcdir="./com/sp/"/> 

應該成爲

<javac srcdir="./com/sp/"> 
    <classpath> 
     <fileset dir="/media/Data/Works/struts-2.3.1.2/lib/" includes="*.jar"/> 
    </classpath> 
</javac> 

看到這個答案的另一個例子Getting Ant <javac> to recognise a classpath

又見了javac任務的文檔。

+0

對於JavaScript? – 2012-08-17 13:50:16

+0

dyac!我經常在我的手機上寫下答案。顯然,javac自動更正爲JavaScript(不是任何人都會把'S'改爲大寫)。 – 2012-08-17 14:01:50

+0

非常感謝你,我真的很感謝你給予的幫助,很多伴侶的幫助..:D,甚至你使用移動它清楚沒有必要打擾所有朋友 – Razor 2012-08-17 14:11:00