Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    53

    [Java] Problema col CLASSPATH..

    Ciao a tutti!
    HO reinstallato java dopo molto tempo che non lo usavo con lo scopo di far funzionare LUCENE, una libreria java che serve a fare information retrieval. Ho installato la JDK, impostato la variabile path con la cartella bin del jdk e poi, seguendo le istruzioni che sono su questo sito http://lucene.apache.org/java/docs/demo.html ho impostato il classpath con il percorso indicato in tale tutorial (ora il classpath è: .; C:\Programmi\QuickTime\QTSystem\QTJava.zip; C:\Programmi\lucene-1.4.3\lucene-1.4.3.jar; C:\Programmi\lucene-1.4.3\lucene-demos-1.4.3.jar.
    Quando pero' vado a scrivere,come suggerito, "java org.apache.lucene.demo.IndexFiles C:\programmi\lucene-1.4.3\src", ottengo l'errore exception in thread "main" ... NoClassDefFound org/apache/lucene/demo/IndexFiles ossia è come se avessi impostato male il classpath in quanto non trova la definizione della classe, ma perche'?

    Qualcuno per caso ha capito dove sbaglio?
    grazie 1000 ciao!

  2. #2

    Re: [Java] Problema col CLASSPATH..

    Originariamente inviato da smok
    Ciao a tutti!
    HO reinstallato java dopo molto tempo che non lo usavo con lo scopo di far funzionare LUCENE, una libreria java che serve a fare information retrieval. Ho installato la JDK, impostato la variabile path con la cartella bin del jdk e poi, seguendo le istruzioni che sono su questo sito http://lucene.apache.org/java/docs/demo.html ho impostato il classpath con il percorso indicato in tale tutorial (ora il classpath è: .; C:\Programmi\QuickTime\QTSystem\QTJava.zip; C:\Programmi\lucene-1.4.3\lucene-1.4.3.jar; C:\Programmi\lucene-1.4.3\lucene-demos-1.4.3.jar.
    Quando pero' vado a scrivere,come suggerito, "java org.apache.lucene.demo.IndexFiles C:\programmi\lucene-1.4.3\src", ottengo l'errore exception in thread "main" ... NoClassDefFound org/apache/lucene/demo/IndexFiles ossia è come se avessi impostato male il classpath in quanto non trova la definizione della classe, ma perche'?

    Qualcuno per caso ha capito dove sbaglio?
    grazie 1000 ciao!
    Come lo lanci il programma?Come lo imposti il classpath?Dove hai messo il jar? Senza queste info è difficile aiutarti.
    Il classpath di un'applicazione jaav si può impostare in vari modi, via paarmetro da riga di comando, via manifest in un jar oppure se lanci il programma con un IDE dalle impostazioni di quest'ultimo. Aspetto tue notizie
    Il centro dell'attenzione non è sempre un buon posto in cui trovarsi

    Mai discutere con uno stupido, la gente potrebbe non capire la differenza. (O. W.)

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    53
    ciao!
    in windows xp lo ho impostato il classpath con click destro su risorse del computer--> variabili d'ambiente ecc ecc
    Sono impostate esattamente come segue:
    PATH: C:\Sun\AppServer\bin; C:\Programmi\Java\jdk1.5.0_06\bin;
    CLASSPATH: .; C:\Programmi\QuickTime\QTSystem\QTJava.zip; C:\lucene-1.4-final\lucene-1.4-final.jar; C:\lucene-1.4-final\lucene-demos-1.4-final.jar

    I files jar sono nella cartella C:\lucene-1.4-final (come si vede nella definizione del CP).
    A Questo punto apro CMD, mi porto nella suddetta cartella e scrivo ad esempio:

    java -cp lucene-1.4-final.jar; lucene-demos-1.4-final.jar
    oppure
    java org.apache.lucene.demo.IndexFiles C:\lucene-1.4-final\src
    ottenedo il solito errore "Exception in thread main() ecc ecc".

    Forse imposto male io il classpath (che se non sbaglio dovrebbe essere impostabile anche con il comando java -cp no?)? Sono disperato devo cominciare un progetto con 'sto cavolo di lucene e ancora non riesco a farlo partire!

    Grazie ancora per l'aiuto ciao!

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    53
    ragazzi comunque senza scomodare lucene, credo che il problema sia proprio di come ho installato java. infatti ho scaricato gli esempi del corso Java di html.it e ho unzippatto CiaoMondo.java e CiaoMondo.class sul desktop e se digito "java CiaoMondo.java" mi da' lo stesso errore NoClassDefFound...

    Inoltre ho appena scoperto che il PATH era impostato male, ora è = C:\Programmi\Java\jdk1.5.0_06\bin; e basta

    Il problema pero' resta: javac CiaoMondo.java funziona, java CiaoMondo.java no...
    Dov'e' l'errore?

    ri-grazie e ri-ciao!

  5. #5
    Originariamente inviato da smok
    ragazzi comunque senza scomodare lucene, credo che il problema sia proprio di come ho installato java. infatti ho scaricato gli esempi del corso Java di html.it e ho unzippatto CiaoMondo.java e CiaoMondo.class sul desktop e se digito "java CiaoMondo.java" mi da' lo stesso errore NoClassDefFound...

    Il problema pero' resta: Dov'e' l'errore?

    ri-grazie e ri-ciao!
    Beh qua c'è un errore di fondo: i file .java sono dei file sorgente mi sembra improbabile che tu possa riuscire a far partire l'applicazione eseguendo quelli. Devi prima compilarli. Riferendosi all'esempio CiaoMondo, devi prima compilare con "javac CiaoMondo.java" ottenendo CiaoMondo.class (ma in questo caso non ti serve perchè il .class c'è già nell'archivio), poi devi eseguire il file binario (il .class) digitando java CiaoMondo (bada bene non java CiaoMondo.class).
    Il centro dell'attenzione non è sempre un buon posto in cui trovarsi

    Mai discutere con uno stupido, la gente potrebbe non capire la differenza. (O. W.)

  6. #6
    Originariamente inviato da smok
    ciao!
    in windows xp lo ho impostato il classpath con click destro su risorse del computer--> variabili d'ambiente ecc ecc
    Sono impostate esattamente come segue:
    PATH: C:\Sun\AppServer\bin; C:\Programmi\Java\jdk1.5.0_06\bin;
    CLASSPATH: .; C:\Programmi\QuickTime\QTSystem\QTJava.zip; C:\lucene-1.4-final\lucene-1.4-final.jar; C:\lucene-1.4-final\lucene-demos-1.4-final.jar
    Il path di windows e la variabile classpath della jvm non sono la stessa cosa (anche se grossomodo coincidono) sotto win. Per impostare la variabile classpath della jvm devi agire sulla system property java.class.path oppure lanciare l'applicazione col parametro -cp (o -classpath)


    Originariamente inviato da smok
    I files jar sono nella cartella C:\lucene-1.4-final (come si vede nella definizione del CP).
    A Questo punto apro CMD, mi porto nella suddetta cartella e scrivo ad esempio:

    java -cp lucene-1.4-final.jar; lucene-demos-1.4-final.jar
    oppure
    java org.apache.lucene.demo.IndexFiles C:\lucene-1.4-final\src
    ottenedo il solito errore "Exception in thread main() ecc ecc".

    Forse imposto male io il classpath (che se non sbaglio dovrebbe essere impostabile anche con il comando java -cp no?)? Sono disperato devo cominciare un progetto con 'sto cavolo di lucene e ancora non riesco a farlo partire!

    Grazie ancora per l'aiuto ciao!
    prova con
    codice:
    java -cp lucene-1.4-final.jar; -jar lucene-demos-1.4-final.jar
    Il centro dell'attenzione non è sempre un buon posto in cui trovarsi

    Mai discutere con uno stupido, la gente potrebbe non capire la differenza. (O. W.)

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    53
    ciao di nuovo!
    Allora per CiaoMondo ora funziona (io mettevo, dopo aver compilato, java CiaoMondo.java)

    Invece tornando al dannato Lucene, se metto il codice che hai suggerito ottengo questo errore:

    Failed to load Main-Class manifest attribute from lucene-demos-1.4-final.jar

    che balls!

    prova con
    codice:
    java -cp lucene-1.4-final.jar; -jar lucene-demos-1.4-final.jar

  8. #8
    Originariamente inviato da smok
    ciao di nuovo!
    Allora per CiaoMondo ora funziona (io mettevo, dopo aver compilato, java CiaoMondo.java)

    Invece tornando al dannato Lucene, se metto il codice che hai suggerito ottengo questo errore:

    Failed to load Main-Class manifest attribute from lucene-demos-1.4-final.jar

    che balls!
    L'errore significa che nel manifest del jar lucene-demos-1.4-final.jar non è presente un attributo che indica alla jvm qual'è la classe con il metodo main, in sostanza quel jar non è eseguibile. Allora devi trovare qual'è il jar per lanciare gli esempi e poi ne riparliamo. Prova ad aprire i jar che hai con un archiviatore (anche winzip) e visualizza il file manifest nella cartella META-INF, devi dirmi se in uno di quelli c'è un attributo Main-Class: ....
    Il centro dell'attenzione non è sempre un buon posto in cui trovarsi

    Mai discutere con uno stupido, la gente potrebbe non capire la differenza. (O. W.)

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    53
    Ciao! Intanto una parentesi per ringraziarti della pazienza che hai!

    TOrnando a lucene, il file manifest.mf di lucene-demos-1.4-final.jar ha al suo interno questo:

    Manifest-Version: 1.0
    Ant-Version: Apache Ant 1.6.1
    Created-By: 1.4.2_04-b05 (Sun Microsystems Inc.)

    mentre quello per lucene-1.4-final.jar:

    Manifest-Version: 1.0
    Ant-Version: Apache Ant 1.6.1
    Created-By: Apache Jakarta

    Name: org/apache/lucene
    Specification-Title: Lucene Search Engine
    Specification-Version: 1.4-final
    Specification-Vendor: Lucene
    Implementation-Title: org.apache.lucene
    Implementation-Version: build 2004-07-01 10:45:57
    Implementation-Vemdpr: Lucene

    quindi mi sembra che siano poco eloquenti no?

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    53
    Scusate ancora.. tanto per conoscenza, vi dico quello che ho fatto di preciso, magari provando ad emulare le mie "gesta" potreste dirmi se a voi funziona o meno...(?)

    Ho scaricato questo file: http://mirror.nohup.it/apache/jakart...-1.4-final.zip
    (1.6 mb) scompattato in c:\lucene-1.4-final e poi ho provato a seguire i rimantenti passi di questa guida all'installazione e al test(in inglese):

    codice:
    Binary installation
    To obtain the binary distribution of Lucene, follow these steps:
    1 Download the latest binary Lucene release from the download area of the
    Jakarta web site: http://jakarta.apache.org. At the time of this writing, the
    latest version is 1.4.2; the subsequent steps assume this version. Download
    either the .zip or .tar.gz file, whichever format is most convenient
    for your environment.
    2 Extract the binary file to the directory of your choice on your file system.
    The archive contains a top-level directory named lucene-1.4.2, so it’s safe
    to extract to c:\ on Windows or your home directory on UNIX. On Windows,
    if you have WinZip handy, use it to open the .zip file and extract its contents
    to c:\. If you’re on UNIX or using cygwin on Windows, unzip and untar (tar
    zxvf lucene-1.4.2.tar.gz) the .tar.gz file in your home directory.
    3 Under the created lucene-1.4.2 directory, you’ll find lucene-1.4.2.jar.
    This is the only file required to introduce Lucene into your applications.
    How you incorporate Lucene’s JAR file into your application depends on
    your environment; there are numerous options. We recommend using
    Ant to build your application’s code. Be sure your code is compiled
    against the Lucene JAR using the classpath options of the <javac> task.
    4 Include Lucene’s JAR file in your application’s distribution appropriately.
    For example, a web application using Lucene would include lucene-
    1.4.2.jar in the WEB-INF/lib directory. For command-line applications, be
    sure Lucene is on the classpath when launching the JVM.
    The binary distribution includes a substantial amount of documentation, including
    Javadocs. The root of the documentation is docs/index.html, which you can
    open in a web browser. Lucene’s distribution also ships two demonstration applications.
    We apologize in advance for the crude state of these demos—they lack
    Running the command-line demo 389
    polish when it comes to ease of use—but the documentation (found in docs/
    demo.html) describes how to use them step by step; we also cover the basics of
    running them here.
    A.2 Running the command-line demo
    The command-line Lucene demo consists of two command-line programs: one
    that indexes a directory tree of files and another that provides a simple search
    interface. To run this demo, set your current working directory to the directory
    where the binary distribution was expanded. Next, run the IndexFiles program
    like this:
    java -cp lucene-1.4.2.jar;lucene-demos-1.4.2.jar
    ➾ org.apache.lucene.demo.IndexFiles docs
    .
    .
    .
    adding docs/queryparsersyntax.html
    adding docs/resources.html
    adding docs/systemproperties.html
    adding docs/whoweare.html
    9454 total milliseconds
    This command indexes the entire docs directory tree (339 files in our case) into
    an index stored in the index subdirectory of the location where you executed
    the command.
    NOTE Literally every file in the docs directory tree is indexed, including .gif
    and .jpg files. None of the files are parsed; instead, each file is indexed
    by streaming its bytes into StandardAnalyzer.
    To search the index just created, execute SearchFiles in this manner:
    java -cp lucene-1.4.2.jar;lucene-demos-1.4.2.jar
    org.apache.lucene.demo.SearchFiles
    Query: IndexSearcher AND QueryParser
    Searching for: +indexsearcher +queryparser
    10 total matching documents
    0. docs/api/index-all.html
    1. docs/api/allclasses-frame.html
    2. docs/api/allclasses-noframe.html
    3. docs/api/org/apache/lucene/search/class-use/Query.html
    4. docs/api/overview-summary.html
    5. docs/api/overview-tree.html
    6. docs/demo2.html
    390 APPENDIX A
    Installing Lucene
    7. docs/demo4.html
    8. docs/api/org/apache/lucene/search/package-summary.html
    9. docs/api/org/apache/lucene/search/package-tree.html
    SearchFiles prompts interactively with Query:. QueryParser is used with Standard-
    Analyzer to create a Query. A maximum of 10 hits are shown at a time; if there are
    more, you can page through them. Press Ctrl-C to exit the program.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.