现在错误变成下面的了。.
我的sampleform 是和sampleaction是同一个目录下的两个类.
D:\tomcat\webapps\sb-1\WEB-INF\src\sample>javac sampleaction.java
sampleaction.java:26: cannot resolve symbol
symbol : class SampleForm
location: class sample.SampleAction
if(form instanceof SampleForm)
^
sampleaction.java:30: cannot resolve symbol
symbol : class SampleForm
location: class sample.SampleAction
SampleForm theForm = (SampleForm)form;
^
sampleaction.java:30: cannot resolve symbol
symbol : class SampleForm
location: class sample.SampleAction
SampleForm theForm = (SampleForm)form;
^
Note: sampleaction.java uses or overrides a deprecated API.
Note: Recompile with -deprecation for details.
3 errorsD:\tomcat\webapps\sb-1\WEB-INF\src\sample>
我的sampleform 是和sampleaction是同一个目录下的两个类.
D:\tomcat\webapps\sb-1\WEB-INF\src\sample>javac sampleaction.java
sampleaction.java:26: cannot resolve symbol
symbol : class SampleForm
location: class sample.SampleAction
if(form instanceof SampleForm)
^
sampleaction.java:30: cannot resolve symbol
symbol : class SampleForm
location: class sample.SampleAction
SampleForm theForm = (SampleForm)form;
^
sampleaction.java:30: cannot resolve symbol
symbol : class SampleForm
location: class sample.SampleAction
SampleForm theForm = (SampleForm)form;
^
Note: sampleaction.java uses or overrides a deprecated API.
Note: Recompile with -deprecation for details.
3 errorsD:\tomcat\webapps\sb-1\WEB-INF\src\sample>
package sample;import javax.servlet.ServletRequest;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.struts.action.*;// Referenced classes of package com.ilovejsp.action.form:// SampleFormpublic class SampleAction extends Action{
public SampleAction()
{
}public ActionForward perform(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response){if(form instanceof SampleForm){SampleForm theForm = (SampleForm)form;String user = theForm.getTheName();String password = theForm.getThePassword();request.setAttribute("user", user);request.setAttribute("password", password);return mapping.findForward("play");}else{return null;}}}
第二,先编译SampleForm.java,将编译出来的CLASS文件放在sample下,然后用javac -sourcepath <path>编译.
谢谢 : [email protected]
Path=%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\KAV6;C:\KAV2003;d:\Program Files\Real\Helix Producer Plus;C:\mysql\bin;D:\j2sdk\bin;D:\tomcat\bin;JAVA_HOME=D:\j2sdk\TOMCAT_HOME=D:\tomcat我得怎么设 path 和 classpath 为什么我的javac 无法识别我的同目录下的 类???/
CATALINA_HOME=D:\tomcat <--4.0版本之后设置这个CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;D:\tomcat\server\lib;D:\tomcat\struts\lib\struts.jarPath=%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\KAV6;C:\KAV2003;d:\Program Files\Real\Helix Producer Plus;C:\mysql\bin;D:\j2sdk\bin;D:\tomcat\bin;.;
app 文件夹有下列文件:
RegisterForm.java
UserDirectory.java
UserDirectoryException.java
RegisterAction.java
前面3个都可以正常编译,可是到了RegisterAction.java 出现下列错误:
D:\tomcat\webapps\sb-1\WEB-INF\classes\app>javac registeraction.java
registeraction.java:12: cannot resolve symbol
symbol : class RegisterForm
location: class app.RegisterAction
RegisterForm rf = (RegisterForm) form;
^
registeraction.java:12: cannot resolve symbol
symbol : class RegisterForm
location: class app.RegisterAction
RegisterForm rf = (RegisterForm) form;
^
registeraction.java:20: cannot resolve symbol
symbol : variable UserDirectory
location: class app.RegisterAction
UserDirectory.getInstance().setUser(username,password1);
^
registeraction.java:22: cannot resolve symbol
symbol : class UserDirectoryException
location: class app.RegisterAction
} catch (UserDirectoryException e) {
^
Note: registeraction.java uses or overrides a deprecated API.
Note: Recompile with -deprecation for details.
4 errors
D:\tomcat\webapps\sb-1\WEB-INF\classes\app>
我就是象您说的那样设置的各个量./
import javax.servlet.http.*;
import java.io.*;
public class RegisterAction extends Action {
public ActionForward perform (ActionMapping mapping,
ActionForm form,
HttpServletRequest req,
HttpServletResponse res) {
// ①Cast the form to the RegisterForm
RegisterForm rf = (RegisterForm) form;
String username = rf.getUsername();
String password1 = rf.getPassword1();
String password2 = rf.getPassword2();
// ②Apply business logic
if (password1.equals(password2)) {
try {
// ③Return ActionForward for success
UserDirectory.getInstance().setUser(username,password1);
return mapping.findForward("success");
} catch (UserDirectoryException e) {
return mapping.findForward("failure");
}
}
// ④Return ActionForward for failure
return mapping.findForward("failure");
}
}
??
package app;编译: javac *.java
就可以全部编译 生成 .class文件
出现一个信息:
Note:RegisterAction.java uses or overrides a deprecated API.Note:Recompile with -deprecation for details.如果一个.java 文件一个的编译,到 RegisterAction.java 就出现D:\tomcat\webapps\sb-1\WEB-INF\classes\app>javac registeraction.java
registeraction.java:12: cannot resolve symbol
symbol : class RegisterForm
location: class app.RegisterAction
RegisterForm rf = (RegisterForm) form;
^
registeraction.java:12: cannot resolve symbol
symbol : class RegisterForm
location: class app.RegisterAction
RegisterForm rf = (RegisterForm) form;
^
registeraction.java:20: cannot resolve symbol
symbol : variable UserDirectory
location: class app.RegisterAction
UserDirectory.getInstance().setUser(username,password1);
^
registeraction.java:22: cannot resolve symbol
symbol : class UserDirectoryException
location: class app.RegisterAction
} catch (UserDirectoryException e) {
^
Note: registeraction.java uses or overrides a deprecated API.
Note: Recompile with -deprecation for details.
4 errors
D:\tomcat\webapps\sb-1\WEB-INF\classes\app>这个错误信息。 郁闷 真么回师?
提示你使用或覆盖了不赞成使用的方法.(:::有可能在以后的JDK中不再支持这个方法:::)