iReport non inizia a utilizzare JRE 8


88

Ho scaricato e installato iReport 4.5 utilizzando il programma di installazione di Windows. Ma quando provo ad avviare iReport mostra la schermata iniziale ma non si avvia.

La mia versione JRE è 8.


3
JasperReports non supporta ancora Java 8.
Endrik

4
E sembra che non ci sia alcuna intenzione di supportare Java 8. iReport sarà in modalità di manutenzione fino alla fine del 2015 ( community.jaspersoft.com/project/ireport-designer ). Jasper Studio è ora lo strumento supportato. Vedi superuser.com/questions/607874/… per sapere perché non funziona (NetBeans 7.4, su cui si basa iReport, ha un problema di compatibilità con Java 8). La soluzione di xtsoler funziona, sebbene non sia necessario modificare i file di configurazione o inserire jre7 in una directory speciale, è sufficiente avviare iReport puntando a jre:ireport --jdk /my/path/to/jre7
Glenn

Risposte:


150

C'è un altro modo se non vuoi installare versioni precedenti di Java puoi fare quanto segue:

1) Scarica iReport-5.6.0.zip da https://sourceforge.net/projects/ireport/files/iReport/iReport-5.6.0/

2) Scarica jre-7u67-windows-x64.tar.gz (quello compresso in un tar) da https://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261 .html

3) Estrarre l'iReport e nella cartella estratta che contiene le cartelle bin ed ecc. Gettare nel file jre. Ad esempio, se decomprimi due volte jre-7u67-windows-x64.tar.gz, ti ritroverai con una cartella denominata jre1.7.0_67. Metti quella cartella nella directory iReport-5.6.0:

inserisci qui la descrizione dell'immagine

quindi vai nella cartella etc e modifica il file ireport.conf e aggiungi la seguente riga al suo interno:

Per Windows jdkhome = ". \ Jre1.7.0_67"

Per Linux jdkhome = "./ jre1.7.0_67"

Nota: la versione jre potrebbe cambiare! secondo il tuo download di 1.7

inserisci qui la descrizione dell'immagine

ora se esegui ireport_w.exe dalla cartella bin nella directory iReport dovrebbe caricarsi bene.


2
L'aggiunta di jdkhome ha funzionato per me. Anche per le versioni precedenti: 4.7.0 e 4.1.2
Dimitri Dewaele

Questo ha funzionato per me. Ho Java 8, ho usato una versione diversa: 1.7.0.79.
Noldy

2
solo per confermare che il problema di non lavorare con Java 8 è almeno fino alla versione 5.6.0 (la più attuale al momento del commento)
Hubert Schumacher

1
Parte del passaggio 3 in quanto l'inserimento dell'installazione di Java nella cartella di iReport non è necessario. Fondamentalmente puoi metterlo ovunque e non lo metterei mai altrove, quindi dovrebbe essere: cartella Programmi. Controlla anche altre risposte ..
BlondCode

Adatto a te stesso. Tuttavia il punto qui è che hai bisogno di quel vecchio jre solo per avviare questo ireport.
xtsoler

59

non disinstallare nulla. un sistema con più versioni di java funziona bene. e non è necessario aggiornare le variabili di ambiente (ad esempio java_home, path, ecc ..).

sì, ireports 3.6.1 richiede java 7 (non funziona con java 8).

tutto quello che devi fare è modificare C: \ Program Files \ Jaspersoft \ iReport-nb-3.6.1 \ etc \ ireport.conf:

# default location of JDK/JRE, can be overridden by using --jdkhome <dir> switch
jdkhome="C:/Program Files/Java/jdk1.7.0_45"

su Linux (senza spazi e percorsi file standard) è molto più semplice. tieni il tuo java 8 per altri progetti interessanti ...


17

iReport non funziona con java 8.

  • se non è ancora installato, scarica e installa java 7
  • trova la directory di installazione del tuo iReport e apri il file: ireport.conf

(lo troverai qui: iReport-xxx \ etc \)

cambia questa riga:

#jdkhome="/path/to/jdk"

a questo (se non questa è la directory di installazione di java 7, sostituire il valore del parametro tra "" s con il percorso di java 7 installato):

jdkhome="C:\Program Files\Java\jdk1.7.0_67"

funziona anche con una versione precedente come iReport-3.7.2
BlondCode

Quindi, per essere comprensibile: questo non cambia le impostazioni Java predefinite (o della tua azienda), ecco perché lo consiglio. Questo cambia il comportamento di iReport: iReport cercherà il jdk che gli hai detto di cercare invece di utilizzare le impostazioni Java predefinite. Non importa che aggiornerai il tuo Java in futuro, iReport continuerà a funzionare finché il vecchio Java non esisterà da qualche parte sulla tua macchina. :) Non sottovaluterò gli hacker del registro, ma non direi che l'hacking del registro è una soluzione ..
BlondCode

9

Sebbene ireport non supporti ufficialmente java8, esiste un modo abbastanza semplice per far funzionare ireport (testato con ireport 5.1) con Java 8. Il problema è in realtà in netbeans. C'è una patch molto semplice, supponendo che non ti interessi la sicurezza migliorata in Java 8:

http://hg.netbeans.org/jet-main/diff/3238e03c676f/openide.util/src/org/openide/util/WeakListenerImpl.java

Non ho nemmeno usato l'esatta sorgente netbeans usata da ireport. Ho appena scaricato l'ultimo WeakListenerImpl.java per intero dal repository sopra e l'ho compilato nella directory ireport con platform9 / lib / org-openide-util.jar nel classpath del compilatore

cd blah/blah/iReport-5.1.0
wget http://hg.netbeans.org/jet-main/raw-file/3238e03c676f/openide.util/src/org/openide/util/WeakListenerImpl.java
javac -d . -cp platform9/lib/org-openide-util.jar WeakListenerImpl.java
zip -r platform9/lib/org-openide-util.jar org

Sto evitando di eseguire eclipse solo per modificare i rapporti jasper il più a lungo possibile. L'ireport basato su netbeans è molto più leggero. Eseguire Eclipse è come usare emacs.


1
Si riferisce a questo bug: netbeans.org/bugzilla/show_bug.cgi?id=229191 Ma iReport non è stato aggiornato.
Gilberto

2
Grazie, grazie, grazie! Sei un salvavita! Ho provato a eseguire ireport 5.6 con Java 8 e ho visto che non si avviava. Poi ho provato a scaricare java 7 ma Oracle consente solo ai clienti Oracle di scaricarlo (!) ... Quindi ho colpito un muro finché non sono incappato nella tua soluzione che ha funzionato alla grande! Mi hai salvato la giornata :)
Serafeim

1
Questa è davvero una soluzione molto migliore rispetto all'installazione di JDK7. Non so perché abbia così pochi voti. Sebbene la patch di una riga disabiliti alcuni miglioramenti della sicurezza JDK8, il risultato non è peggiore (e probabilmente migliore) rispetto all'esecuzione con JDK7.
Stuart Gathman

5

Funziona solo con JRE 1.7 basta scaricarlo ed estrarlo nella posizione preferita

e usa il seguente comando per aprire iReport

ireport --jdkhome Path To JDK Home

4

Ho risolto il problema sul mio PC, sul mio ambiente iReport era iReport-5.1.0, erano stati installati sia jdk 7 che jdk 8.

ma iReport non è stato caricato

correzione: - 1. Trova iReport.conf // C: \ Program Files (x86) \ Jaspersoft \ iReport-5.1.0 \ ecc

  1. Aprilo nell'editor di testo

  2. copia il percorso di installazione di jdk // C: \ Program Files (x86) \ Java \ jdk1.8.0_60

  3. aggiungi jdkhome = nel file ireport.conf jdkhome = "C: / Programmi (x86) /Java/jdk1.8.0_60"

inserisci qui la descrizione dell'immagine

Ora iReport funzionerà


1

Con ireport 4.7.1, dopo aver impostato jdkhome etc/ireport.conf,ireport.exe non si avvia. Niente schizzi, niente finestre.

Quando avvio ireport_w.exein un cmd, ricevo questo messaggio:

Si è verificato un errore durante l'inizializzazione della VM

Impossibile riservare spazio sufficiente per l'heap degli oggetti

Errore: impossibile creare la Java Virtual Machine.

Errore: si è verificata un'eccezione irreversibile. Il programma uscirà.

Soluzione: nel file etc / ireport.conf, sulla riga che inizia con default_options, ho ridotto il valore di -J-XX:MaxPermSize a 256m invece di 512m

default_options="--branding ireport -J-Xms256m -J-Xmx512m
    -J-Dorg.netbeans.ProxyClassLoader.level=1000 -J-XX:MaxPermSize=256m"

Assicurati di non avere variabili d'ambiente come _JAVA_OPTIONSquella che sovrascriverà queste impostazioni. Avevo una tale variabile di ambiente che impostava la dimensione dell'heap su 1 GB. Ha avuto la precedenza sulle default_optionsimpostazioni qui. Una volta eliminato, iReport è stato eseguito correttamente.
ADTC

0

Ero stanco di cercare su google come eseguire iReport con java 8.

Ho fatto tutto come detto su Internet, ma non so perché non funzionassero per me.

Quindi cambio la versione corrente di JDK del computer da 1.8 a 1.7 utilizzando l'editor del registro.

Adesso funziona bene.

Per modificare la versione corrente

Start => Digita regedit (premi Invio) => HKEY_LOCAL_MACHINE => SOFTWARE => JavaSoft => Java Development Kit => Modifica valore chiave di CurrentVersion da 1.8 a 1.7


0

Per me, la combinazione della risposta di Stuart Gathman e Raviath in questo thread ha funzionato in Windows Server 2016 per iReport 5.6.0.

Inoltre, ho aggiunto un collegamento simbolico all'interno di C: \ programmi \ java \ jre7 a jdk8 in questo modo:

cmd /c mklink /d "C:\program files\java\jre7\bin" "C:\Program Files\Java\jdk1.8.0_181\bin"

perché iReport si lamentava costantemente di non riuscire a trovare java.exe all'interno di C: \ program files \ java \ jre7 \ bin \ - Quindi gli ho servito il java.exe disponibile (nel mio caso V8.181) sotto il percorso desiderato e lo inghiottì volentieri.


0

Ho installato IReport 5.6 con Java 7: non funziona

Ho provato ad installare Java 6 e ho aggiunto il percorso al file "ireport.conf" come lo screenshot allegato e ha funzionato bene: Dinserisci qui la descrizione dell'immagine

Quindi i passaggi sono:

 Install IReport 5.6
 Install JDK 6
 Edit "ireport.conf" file like the below image and Enjoy ;)
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.