2010-10-02 9 views
7

मैं ActionFactory.java फ़ाइल जो अपने पैकेज में से एक का आयात करता है संकलित करने के लिए कोशिश कर रहा हूँ, RegisterAction.javaचींटी - javac विफलता संकलन की वजह से नहीं मिल रहा है प्रतीक

यहाँ फ़ाइल संरचना है:

/com/masatosan/कार्रवाई/रजिस्टर/RegisterAction.java

/com/masatosan/redirector/ActionFactory.java

चींटी उत्पादन के अनुसार, मुझे लगता है कि चींटी RegisterAction.java जो ActionFactory.java

में आयात किया जाता है नहीं मिल सकता है

जब मैं मैन्युअल रूप से कंसोल पर जावैक चलाता हूं तो यह सफलतापूर्वक संकलित करता है, इसलिए यह कुछ क्लासपाथ सेटिंग होना चाहिए जो एएनटी नहीं देख रहा है।

मुझे पता है कि मैं ANT_HOME/lib में कुछ जार जोड़ सकता हूं लेकिन मेरे मामले में, एंट एक्शनआरग्स्टर.जावा, जार या कुछ और नहीं ढूंढ पाता है। क्या कोई मुझे यह जानने में मदद कर सकता है कि क्या गलत है?

चींटी स्क्रिप्ट

<project name="CompileMasatosan" default="main" 
    basedir="C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\head_first\src\com\masatosan"> 
    <description> 
     masatosan compiler 
    </description> 

    <!-- this invokes all targets --> 
    <target name="main" depends="compileAll" /> 

    <!-- properties --> 
    <property name="srcMasatosan" 
     location="C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\head_first\src\com\masatosan" /> 

    <property name="dest" 
    location="C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\head_first\WEB-INF\classes" /> 

    <property name="redirectorSrc" location="${srcMasatosan}\redirector" /> 

    <!-- complie --> 
    <target name="compileAll"> 
     <javac target="1.5" source="1.5" srcdir="${redirectorSrc}" destdir="${dest}" /> 
    </target> 

</project> 

पर्यावरण चर

ANT_HOME=C:\apache-ant-1.8.1-bin\apache-ant-1.8.1 

CLASSPATH=C:\Program Files\Java\jre6\bin;C:\Program Files\Apache Software Foundation\Tomcat 6.0\lib;C:\Program Files\Java\jre6\bin;C:\P 
rogram Files\Apache Software Foundation\Tomcat 6.0\lib\mail.jar;C:\Program Files\Apache Software Foundation\Tomcat 6.0\lib;C:\Program F 
iles\Java\jre6\bin;C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\head_first\src\com\masatosan\actions\register; 

ActionFactory.java

package com.masatosan.redirector; 
import com.masatosan.actions.register.RegisterAction; 

public class ActionFactory { 
//some code here... 

} 

चींटी उत्पादन

C:\apache-ant-1.8.1-bin\javac_masatosan\debug>ant 
Buildfile: C:\apache-ant-1.8.1-bin\javac_masatosan\debug\build.xml 

compileAll: 
    [javac] C:\apache-ant-1.8.1-bin\javac_masatosan\debug\build.xml:47: warning: 'includeantruntime' was not set, defaulting to build.s 
ysclasspath=last; set to false for repeatable builds 
    [javac] Compiling 4 source files to C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\head_first\WEB-INF\classes 
    [javac] C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\head_first\src\com\masatosan\redirector\ActionFactory.java:1 
5: cannot find symbol 
    [javac] symbol : class RegisterAction 
    [javac] location: package com.masatosan.actions.register 
    [javac] import com.masatosan.actions.register.RegisterAction; 
    [javac]         ^
    [javac] C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\head_first\src\com\masatosan\redirector\ActionFactory.java:2 
4: cannot find symbol 
    [javac] symbol : class RegisterAction 
    [javac] location: class com.masatosan.redirector.ActionFactory 
    [javac]    actions.put("POST/process_register.do", new RegisterAction()); 
    [javac]              ^
    [javac] 2 errors 

BUILD FAILED 
C:\apache-ant-1.8.1-bin\javac_masatosan\debug\build.xml:47: Compile failed; see the compiler error output for details. 

उत्तर

10

ऐसा लगता है कि आप केवल एक "sourcepath" से "javac" निर्दिष्ट कर रहे हैं - और दोनों नहीं। शायद तुम

<target name="compileAll"> 
    <javac target="1.5" source="1.5" destdir="${dest}"> 
    <src path="${redirectorSrc}"/> 
    <src path="${srcMasatosan}"/> 
    </javac>  
</target> 
+0

क्षमा करना चाहिए देर से प्रतिक्रिया के लिए, धन्यवाद आप अपने समाधान समस्या हल हो। –

+1

टाइपो: '..target =" 1.5 स्रोत = "1.5 ...'? – Tshepang

0
Make it point to your exact jar files directory where jars are present 
<path id="classpath"> 
<fileset dir="${main.jar}" includes="**/*.jar"/> 
<!-- <pathelement location="${src.dir}" />--> 
</path> 

----in my case jar files present in ---- 
<property name="main.jar"  value="jar"/> 

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^