Avatar billede ulriks Nybegynder
07. juli 2005 - 16:11 Der er 6 kommentarer

bat-fil og bash-script til eksekvering af java app

Jeg vil gerne have, at min java applikation kan kaldes alle steder fra på en maskine. Til det havde jeg tænkt mig at skrive en bat-fil og et bash-script, der kan placeres et sted hvor computeren kan finde dem.

Hvordan skriver man sådan nogle? Min app tager nogle argumenter

Er det muligt, at finde ud af fra hvilket dir bat/scriptet er kaldt? - vil meger gerne automatisk kunne sætte det til working dir

Mvh
Avatar billede arne_v Ekspert
07. juli 2005 - 16:19 #1
java -classpath etsted dinapp %1 %2 %3 %4 %5 %6

til Windows og samme bare med $ fremfor % på Linux
Avatar billede arne_v Ekspert
07. juli 2005 - 16:20 #2
din app kan godt finde det dir dens kode er hentet fra
Avatar billede arne_v Ekspert
07. juli 2005 - 16:22 #3
ellers bør %~f0 (og formentlig også $0) i scriptet give stien til sig selv
Avatar billede ulriks Nybegynder
07. juli 2005 - 16:47 #4
deet er jeg ikke helt sikker på jeg helt forstår...

Mener du noget i retning af (der virker):
#! /bin/bash
# Start carl2col
java  -Djava.ext.dirs=/home/ulriks/java-programs/carl2col/ dk.ruc.ulriks.carl2col.Carl2col $1 $2 $3 $4

-classpath virker ikke... hvorfor mon?

Jeg er ikke sikker på, at spg to er formuleret korrekt:
Hvis jeg kalder min java app fra fx mit tmp dir, vil jeg gerne have tmp -dir'et som working dir - ikke det dir hvor selve applikationen ligger
Avatar billede arne_v Ekspert
07. juli 2005 - 18:57 #5
jeg ved ikke med classpath

normal vil man vel angive den i scriptet

du står i det directory du starter programmet fra per default
Avatar billede ulriks Nybegynder
10. juli 2005 - 17:35 #6
jeg har fixet det (prøvede lidt hist og her :-)

Her er mit bash script:
#! /bin/bash
# Start carl2col
# change the programpath to fit your system
programpath=/home/ulriks/java-programs/carl2col
#java  -classpath $programpath/bin dk.ruc.ulriks.carl2col.Carl2col $1 $2 $3 $4
java -jar $programpath/carl2col.jar $1 $2 $3 $4

og her er min bat-fil:
rem Start carl2col
rem change the programpath to fit your system
set programpath=C:\programs\carl2col
rem java  -classpath $programpath/bin dk.ruc.ulriks.carl2col.Carl2col %1 %2 %3 %4
java -jar %programpath%/carl2col.jar %1 %2 %3 %4

i tilfælde af, at trådene her er søgbare :)

Ved ikke hvorfor classpath'en ikke virkede... det gør det nu - lidt stenet :)

Ideen er at kunne starte app'en fra et vilkårligt dir, og det ser ud til at virke (naturligvis forudsat at script/bat fil er i path'en
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