javac编译错误

问题描述:

试图创建一个导入另一个测试包的测试应用程序。javac编译错误

应用程序中列出了测试,由于是编译CMD和ERR ..

的文件都在同一目录。我能够编译MyIncorrectnessListener.java和MycssErrorHandler.java,没有警告/错误。

我想弄清楚err的原因是什么>>> sjsu_classes.java:33:'。'预计< < < < <

任何指针/评论赞赏...

感谢

编译CMD/ERR

[[email protected] parseapp2]# javac -Xlint -classpath '/opt/htmlunit/lib/ 
*:/parseapp2/' sjsu_classes.java sjsu_classes.java:33: '.' expected 
import MyIncorrectnessListener; 
          ^
sjsu_classes.java:33: ';' expected 
import MyIncorrectnessListener; 
          ^
sjsu_classes.java:34: class, interface, or enum expected 
import MycssErrorHandler; 
    ^

3 errors 
3 warnings 



/* 
//  sjsu_classes.java 
// 
//  function handles getting the data from the sjsu course page, and returns the course page/list 
//  for the given Alphabet letter. - handles ane letter at a time.. 
//  -the page is then returned to the calling routinne 
// 
//    input: 
//      args[0] - start url 
//      args[1] - term 
//      args[2] - dept 
// 
//    return: 
//      course page for the term/dept 
// 
*/ 
import java.io.IOException; 
import java.net.URL; 
import java.util.List; 
import java.util.Set; 

import org.apache.commons.httpclient.NameValuePair; 

import com.gargoylesoftware.htmlunit.*; 
import com.gargoylesoftware.htmlunit.html.*; 
import org.w3c.css.sac.ErrorHandler; 
import org.xml.sax.SAXParseException; 

//==my test packages 
import MyIncorrectnessListener; 
import MycssErrorHandler; 

public class sjsu_classes { 

    //public static void main(String[] args) throws Exception { 
    public void main(String[] args) throws Exception { 

      // Create and initialize WebClient object 
     WebClient webClient = new WebClient(BrowserVersion.FIREFOX_3); 

      IncorrectnessListener ilisten = new MyIncorrectnessListener(); 
      ErrorHandler ierr = new MycssErrorHandler(); 
      webClient.setIncorrectnessListener(ilisten); 
      webClient.setCssErrorHandler(ierr); 
     webClient.setThrowExceptionOnScriptError(false); 
     webClient.setRefreshHandler(new RefreshHandler() { 
     public void handleRefresh(Page page, URL url, int arg) throws IOException { 
          //System.out.println("handleRefresh"); 
        } 

      }); 

      // visit the page, get the form, get the btn 
      String url_tmp; 
      String url; 
      String Term; 
      String Dept; 
      String tmp1; 
      String tmp2; 

      url_tmp="?FolderPath=PORTAL_ROOT_OBJECT.PA_HC_CLASS_SEARCH&amp;PortalActualURL=https%3a%2f%2fcmshr.sjsu.edu%2fpsc%2fHSJPRDF%2fEMPLOYEE%2fHSJPRD%2fc%2fCOMMUNITY_ACCESS.CLASS_SEARCH.GBL&amp;PortalRegistryName=EMPLOYEE&amp;PortalServletURI=https%3a%2f%2fcmshr.sjsu.edu%2fpsp%2fHSJPRDF%2f&amp;PortalURI=https%3a%2f%2fcmshr.sjsu.edu%2fpsc%2fHSJPRDF%2f&amp;PortalHostNode=HRMS&amp;NoCrumbs=yes"; 

      System.exit(0); 
    } 

}

===== ==================

MyIncorrectnessListener test package 
-------------------------------------------- 
/* 
//  MyIncorrectnessListener.java 
// 
//  function handles getting the data from the sjsu course page, and returns the course page/list 
//  for the given Alphabet letter. - handles ane letter at a time.. 
//  -the page is then returned to the calling routinne 
// 
//    input: 
//      args[0] - start url 
//      args[1] - term 
//      args[2] - dept 
// 
//    return: 
//      course page for the term/dept 
// 
*/ 
//==handle the warnings thrown from the js functions.. 

package MyIncorrectnessListener; 

import com.gargoylesoftware.htmlunit.*; 
import com.gargoylesoftware.htmlunit.html.*; 

//public static class MyIncorrectnessListener implements IncorrectnessListener 
public class MyIncorrectnessListener implements IncorrectnessListener 
{ 
    @Override 
public void notify(String arg0, Object arg1) 
{ 
    //System.err.println("Argument : " + arg0.toString() + ", Object :"); 
} 
} 

MycssErrorHandler test package 
-------------------------------- 
/* 
//  MycssErrorHandler.java 
// 
//  function handles getting the data from the sjsu course page, and returns the course page/list 
//  for the given Alphabet letter. - handles ane letter at a time.. 
//  -the page is then returned to the calling routinne 
// 
//    input: 
//      args[0] - start url 
//      args[1] - term 
//      args[2] - dept 
// 
//    return: 
//      course page for the term/dept 
// 
*/ 
package MycssErrorHandler; 

import org.w3c.css.sac.ErrorHandler; 
import org.xml.sax.SAXParseException; 
import com.gargoylesoftware.htmlunit.*; 
import com.gargoylesoftware.htmlunit.html.*; 

//==handle the warnings thrown from the js functions.. 
     //==handle the warnings thrown from the css functions.. 
//  public static class MycssErrorHandler implements DefaultCssErrorHandler 
//  public static class MycssErrorHandler implements ErrorHandler 
//  public class MycssErrorHandler implements ErrorHandler 
     public abstract class MycssErrorHandler implements ErrorHandler 
//  protected class MycssErrorHandler implements ErrorHandler 
     { 
     //@Override 
     public void notify(String arg0, Object arg1) 
     { 
      //System.err.println("Argument : " + arg0.toString() + ",Object : "); 
     } 
     //@Override 
       public void fatalError(SAXParseException ex) 
       { 
         //fatals.add(ex); 
       } 
     } 

Java文件必须在一个符合他们包名的目录,所以你必须把 MyIncorrectnessListener.java在名为MyIncorrectnessListener,MycssErrorHandler.java在名为MycssErrorHandler目录目录等等。

您可以将它们全部放在同一目录中,但必须删除文件中的'包'语句。

您遇到的错误是因为您只在导入语句中提供包名称。你应该从软件包中导入一些特定的东西或者所有东西。将其更改为

import MyIncorrectnessListener.MyIncorrectnessListener; 

import MyIncorrectnessListener.*; 

或者,如果你不把任何包文件,你不需要任何import语句。