Avatar billede sunlock Nybegynder
02. november 2005 - 15:52 Der er 11 kommentarer og
2 løsninger

Problem med at køre en jar-fil

Jeg har et problem med at køre jar-filer på min Linux maskine. En af mine kammerater har ingen problem på Windows. Jeg har fået fat i jtb132.jar og forsøger at køre den:
java -jar jtb132.jar persij.jj

Dette giver:
Failed to load Main-Class manifest attribute from
jtb132.jar

Efter at have søgt lidt rundt er der nogen som "påstår" (?) at der skal tilføjes noget til mainfest-filen... men det kan da ikke passe at jeg skal ind og rette i _alle_ jar-filer jeg har og vil bruge? Er der en/flere som ved/har en ide til hvad jeg skal gøre så ville jeg blive meget glad.

java -version giver følgende:
java version "1.5.0_02"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_02-b09)
Java HotSpot(TM) Client VM (build 1.5.0_02-b09, mixed mode)

På forhånd mange mange mange tak :-)
Avatar billede arne_v Ekspert
02. november 2005 - 15:55 #1
prøv:

java -classpath jtb132.jar persij.jj
Avatar billede arne_v Ekspert
02. november 2005 - 15:56 #2
Og det er:

java -jar jtb132.jar

bemærk uden klasse navn

det angives nemlig i manifestet:

Main-Class: persij.jj
Avatar billede simonvalter Praktikant
02. november 2005 - 18:00 #3
Det virker fint her med java -jar jtb132.jar input.jj

måske har du fået fat i source jar?

prøv evt at hente den igen
http://compilers.cs.ucla.edu/jtb/
Avatar billede arne_v Ekspert
02. november 2005 - 18:01 #4
er persij.jj et filnavn ?
Avatar billede simonvalter Praktikant
02. november 2005 - 18:12 #5
jep .. det er en Java grammar for javacc
Avatar billede simonvalter Praktikant
02. november 2005 - 18:13 #6
eller en hviklen som helst grammar og actions som jtb så laver et syntax træ ud fra.
Avatar billede arne_v Ekspert
02. november 2005 - 18:25 #7
så kan spørger godt ignorere min ekommentarer
Avatar billede sunlock Nybegynder
03. november 2005 - 08:13 #8
Hmmm - jeg havde også fundet frem til at jeg skulle have det angivet i manifest-filen - men det kan da ikke passe at stort set alle mine jar-filer ikke virker? Jeg har lige smidt 5.0 ind for at kunne bruge jtb...
Avatar billede sunlock Nybegynder
03. november 2005 - 09:42 #9
Kom lige med et svar, arne.

Det var sådan her:
java -cp lib/jtb132.jar jtb persij.jj

lib da der ligger mine libs...
Avatar billede arne_v Ekspert
03. november 2005 - 10:33 #10
ok

men har simon ikke hjulpet mindst lige så meget ?
Avatar billede sunlock Nybegynder
06. november 2005 - 09:55 #11
Tjo - men det var nu classpath som var et problem :-)

Men Simon, smid da et svar også.
Jeg kan lige tilføje at hvis man tilføjer "main class" til manifest-filen virker det snilt også.
Avatar billede simonvalter Praktikant
06. november 2005 - 16:18 #12
ok. Du har åbenbart ikke den samme jar som man kan downloade på jtb hjemmesiden. Den har allerede Main-Class: EDU.purdue.jtb.JTB i manifest.
Avatar billede sunlock Nybegynder
07. november 2005 - 22:10 #13
Jeg har hentet den derfra - strange...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester