2010-07-09 7 views
1

J'utilise eclipse pour écrire la fonction d'encapsulation de l'analyseur RSS et renvoie les valeurs attendues lorsqu'elle est exécutée à partir d'Eclipse.La bibliothèque de classes par défaut n'inclut pas com.sun.cnpi.rss?

package rss_parser_wrapper; 

import java.io.IOException; 
import java.net.MalformedURLException; 
import java.net.URL; 
import java.util.Collection; 
import java.util.Iterator; 

import com.sun.cnpi.rss.elements.Item; 
import com.sun.cnpi.rss.elements.Rss; 
import com.sun.cnpi.rss.parser.RssParser; 
import com.sun.cnpi.rss.parser.RssParserException; 
import com.sun.cnpi.rss.parser.RssParserFactory; 


public class RssParserWrapper { 

    public static Rss getRss(String url) throws RssParserException, MalformedURLException, IOException { 
     RssParser parser = RssParserFactory.createDefault(); 
     Rss rss = parser.parse(new URL(url)); 
     return rss; 
    } 
} 

Donc, maintenant je compiler ceci afin de pousser sur le serveur Web de tomcat.

J'ai essayé de compiler à partir du répertoire de mon répertoire courant (classes):

javac -cp . -target 1.5 -source 1.5 rss_parser_wrapper/RssParserWrapper.java 

Je reçois l'erreur:

makun /home/makun/tomcat/apache-tomcat-6.0.26/webapps/head_first/WEB-INF/classes ->javac -cp . -source 1.5 -target 1.5 rss_parser_wrapper/RssParserWrapper.java 
rss_parser_wrapper/RssParserWrapper.java:9: package com.sun.cnpi.rss.elements does not exist 
import com.sun.cnpi.rss.elements.Channel; 
           ^
rss_parser_wrapper/RssParserWrapper.java:10: package com.sun.cnpi.rss.elements does not exist 
import com.sun.cnpi.rss.elements.Item; 
           ^
rss_parser_wrapper/RssParserWrapper.java:11: package com.sun.cnpi.rss.elements does not exist 
import com.sun.cnpi.rss.elements.Rss; 
           ^
rss_parser_wrapper/RssParserWrapper.java:12: package com.sun.cnpi.rss.parser does not exist 
import com.sun.cnpi.rss.parser.RssParser; 
          ^
rss_parser_wrapper/RssParserWrapper.java:13: package com.sun.cnpi.rss.parser does not exist 

Est-ce que cela signifie la bibliothèque de classes Java ne possède pas ces classes? Comment se fait-il que je ne me plains pas lorsque je lance le fichier depuis eclipse?

Répondre

1

Vous devez ajouter le chemin d'accès au fichier JAR contenant la bibliothèque RSS dans le chemin de classe.

javac -cp .:/path/to/rss.jar -target 1.5 -source 1.5 rss_parser_wrapper/RssParserWrapper.java 

Il travaille dans Eclipse car il est assez intelligent pour inclure les bibliothèques nécessaires dans le classpath (basé sur Buildpath du projet configuré).

+0

Merci! Il a compilé avec succès! –