Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2014
    Messaggi
    323

    creare una libreria ed usarla (shell)

    Salve, io ho creato un file jar .. ovvero una libreria con una sola classe per adesso.

    Ora la compilazione:
    javac -cp lib/lib.jar Analisi.java

    non da nessun errore ed mi crea il file class

    per eseguirla faccio:
    java -cp lib/lib.jar Analisi

    e mi da questo:

    Errore: impossibile trovare o caricare la classe principale Analisi

    il file codice è questo :
    codice:
    import java.io.*;
    public class Analisi {
    public static void main(String argv[ ]) {
        String Testo = new String ( );
        char Carattere;
        int Vocali = 0;
        int Spazi = 0;
        double FreqVocali,FreqSpazi;
        System.out.println("Inserisci il testo da analizzare:");
        Input _input = new Input(); // classe per gestire tastiera, interi, stringhe , char, double
        Testo = _input.readLine();
        Testo.toLowerCase( );
        for(int i = 0 ; i < Testo.length( ); i++) {
        Carattere = Testo.charAt(i);
        switch(Carattere) {
        case 'a':
        case 'e':
        case 'i':
        case 'o':
        case 'u': Vocali++;
        break;
        case ' ': Spazi++;
        break;
        }
        }
        System.out.println("\nNumero di caratteri= " +Testo.length( ));
        System.out.println("\nNumero di vocali= " +Vocali);
        FreqVocali=(double) Vocali/Testo.length( );
        FreqVocali=(double) Math.round(FreqVocali*100)/100;
        System.out.println("\tFrequenza di vocali= " +FreqVocali);
        System.out.println("\nNumero di spazi= " +Spazi);
        FreqSpazi = (double) Spazi/Testo.length( );
        FreqSpazi = (double) Math.round(FreqSpazi*100)/100;
        System.out.println("\tFrequenza di spazi= "+FreqSpazi);
        }
    }

    completamente vado a prendere una classe dove ho la gestione della tastiera.

    avete idea perché mi da quell'errore lì?

    grazie mille.

    Buona giornata.


    EDIT : Uso Linux Ubuntu 14.04.03 LTS. con java 1.8.60
    Ultima modifica di LedGiallo; 17-10-2015 a 15:01

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da LedGiallo Visualizza il messaggio
    per eseguirla faccio:
    java -cp lib/lib.jar Analisi

    e mi da questo:

    Errore: impossibile trovare o caricare la classe principale Analisi
    Anche la directory dove c'è la tua classe va messa "in classpath"

    java -cp .:lib/lib.jar Analisi

    "." = directory corrente

    (e il : è corretto, essendo Linux, su Windows si usa ; )
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2014
    Messaggi
    323
    ok risolto e grazie mille

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2014
    Messaggi
    323
    un altra cosa come posso creare l'eseguibile Analisi.jar e mettere la mia lib?

    perché se faccio cosi:
    java -cp .:lib/lib.jar -jar Analisi.jar

    mi da :
    codice:
    Inserisci il testo da analizzare:
    Exception in thread "main" java.lang.NoClassDefFoundError: Input
    	at Analisi.main(Analisi.java:10)
    Caused by: java.lang.ClassNotFoundException: Input
    	at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    	... 1 more
    dice che non trova la classe input.. come si fa ad farla funzionare?

    grazie mille.

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2014
    Messaggi
    323
    quasi risolto:
    codice:
    Manifest-Version: 1.0
    Created-By: 1.8.0_60 (Oracle Corporation)
    Main-Class: Analisi
    Class-Path: lib/lib.jar
    ma essendo che il comando che ho seguito io per creare il jar come faccio in automatico mettergli anche il class-path ?

    ho usato questo:
    jar cfe Analisi.jar Analisi Analisi.class

    come aggiungo class-path?

    perché adesso ho aperto con monta archivi e inserito il codice trovato sulle guide.

    grazie mille.

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2014
    Messaggi
    323
    risolto con queste opzioni:
    jar cfm Analisi.jar MANIFEST.TXT Analisi.class

    codice:
    Manifest-Version: 1.0Created-By: 1.8.0_60 (Oracle Corporation)
    Main-Class: Analisi
    Class-Path: lib/lib.jar

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 © 2025 vBulletin Solutions, Inc. All rights reserved.