12. juni 2003 - 19:50
Der er
20 kommentarer og 1 løsning
kørsel af .jar fil med javaw
Jeg har lavet min jar fil. Den kører fint når jeg lige har oprettet, men når jeg fjerner META-INF biblioteket og biblioteket med class filerne i vil den ikke køre. klasserne ligger i en package. Jeg kører: [stien til javaw]\javaw.exe -classpath [sti til jar] [navn på jar fil].[navn på startklasse] Min META-INF fil ser således ud: Class-Path: .\[pakkenavn] Main-Class: [pakkenavn].[startklasse] Jeg genererer jar filen md følgende cmd: jar cvfm [navn].jar META-INF\MANIFEST.MF [pakkenavn]\*.class MANIFEST og klassefilerne ligger på de respektive pladser!!! Hvorfor vil den ikke det?
Annonceindlæg fra Cornerstones
Du mener: [stien til javaw]\javaw.exe -classpath [fuld sti til jar fil] [pakke].[navn på startklasse] ?
Prøv sådan: NB: jeg har også byttet om her: cvfm til: cvmf jar cvmf META-INF\MANIFEST.MF [navn].jar [pakkenavn]\*.class
Og når du har et main-class direktiv så burde: [stien til javaw]\javaw.exe -jar [fuld sti til jar fil] være nok.
cvfm [navn].jar META-INF\MANIFEST.MF og cvmf META-INF\MANIFEST.MF [navn].jar burde opføre sig ens (fil rækkefølgen skal bare matche switch rækkefølgen).
Jeg kan godt få det til at køre med javaw -jar..... men jeg vil gerne kunne definere hvilken startklasse den skal vælge.
Det har du jo angivet i manifestet ??
Men ellers burde min 19:55:14 kommentar forklare det.
??? Hvordan har du lavet dit manifest???
Jeg skriver gerne igen :) Min META-INF fil ser således ud: Class-Path: .\[pakkenavn] Main-Class: [pakkenavn].[startklasse] Eller er det andet du søger svar på?
12. juni 2003 - 21:13
#10
Hvis du har lavet dit manifest i eksempelvis Notepad, så kald den manifest.txt og brug det navn Altså: META-INF\MANIFEST.txt
12. juni 2003 - 21:21
#11
Det er sådan set ligegyldigt hvor tingene er, bare stien er rigtig Dette belyser det måske bedre. jar cvmf H:\Skraldespand\META-INF\MANIFEST.txt G:\jarfiler\XXXX.jar C:\Kogekar\*.class
12. juni 2003 - 21:22
#12
Det virker stadig ikke :( Det virker som om at det er classpath i: [stien til javaw]\javaw.exe -classpath [sti til jar] [navn på jar fil].[navn på startklasse] den er gal med
12. juni 2003 - 21:23
#13
Du skal angive pakken *ikke* jar-file foran punktum !
12. juni 2003 - 21:24
#14
[stien til javaw]\javaw.exe -classpath [fuld sti til jar fil] [pakke].[navn på startklasse]
12. juni 2003 - 21:24
#15
Eksempel: c:\j2sdk1.4.1_01\bin\javaw -classpath c:\dir\mitbib.jar minpakke.MinKlasse
12. juni 2003 - 21:25
#16
svar
12. juni 2003 - 21:25
#17
Det skal siges at den virker med både: jar .... osv javaw -jar osv javaw classpath... (men kun når klasse biblioteket og META-INF bib. ligger der) Som sagt tror at det er classpath den er gal med...
12. juni 2003 - 21:33
#18
Har du prøvet med pakkenavn foran klassen ?
12. juni 2003 - 21:43
#19
ØØhhhhh, så var der lige ham fjolset der snakkede om at få stien rigtig jævnfør min kommentar 12/06-2003 21:21:09 Hvis du laver din jar-fil fra cmd og står i roden af dit C-drev og har class filerne liggende i directory 'C:\Kogekar', så bliver det følgende jar cvmf H:\Skraldespand\META-INF\MANIFEST.txt G:\jarfiler\XXXX.jar Kogekar\*.class Altså: Kogekar\*.class til sidst IKKE: C:\Kogekar\*.class Det gør vist hele forskellen!
12. juni 2003 - 21:43
#20
ja jeg kører pakkenavn.klasse i både jar og javaw
12. juni 2003 - 21:55
#21
Arne v... du svarede allerede på løsningen på 1. svar :O Jeg havde bare ikke lavet den fulde sti... Jeg skrev c:\etellerandet i stedet for c:\etellerandet\test.jar DUMT DUMT DUMT... tak for hjælpen pointene går din vej
Kurser inden for grundlæggende programmering