Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Java aus ner batch datei starten mit Parameter

Empfohlene Antworten

Hallo zusammen,

habe folgendes Problem,

möchte gerne aus ner batch heraus ein java prog starten und an dieses auch parameter übergibt.


@echo off

c:\Programme\Java\jre6\bin\javaw.exe testIt $REQUEST_METHOD $QUERY_STRING



hab versucht Parameter einfahc hinten dran zuhängen hat aber nicht funktioniert.

evlt könnt ihr mir weiterhelfen.

Gruß Tobi

In was für einem System sind wir?, wie heisst deine Mainclass? wie heisst das Package wo die MainClass liegt? Hast du noch andere Jars die verwendet werden?, woher kommen die Parameter,? liest du die String[] args aus ?

Ich habe quasi ne Webseite wo ich Benutzername und pwd eingebe, wenn ich aufs Knöpfchen klick dann sollte eigentlich die .bat datei mein Java Proggi starten (am besten mit den Parametern). Weil ich mit Java quasi die Eingaben prüfen möchte ob sie passen. ist ganz einfach gehalten, kein db zugriff oder so.

Arbeite unter Windows Vista, hab nur eine simple Java Datei, heißt in meinem Falle testIt. Dass ganze sollte über CGI laufen. Die String[] args lese ich auch.wenn args[0]==get dann splitte ich args[1] auf um nutzer und pwd info zu erhalten.

bei post wird dann einfach ein inputreader erzeugt der mir die daten dan auch liefert.

In eclipse funktioniert das ganze wunderbar.

Mien Problem liegt nur darin ne batch zu basteln die mir das Java Prog laufen lässt und Parameter mitgiebt

P.S.: Kann es sein dass ich bei jedem Aufruf vorher mein .java compilieren muss mit den jeweils neuen eingaben? und dann erst ausführen kann?

Ich weiß Textwand trifft kritisch :)

Also Du musst Deinen Java Quellcode nicht jedesmal kompilieren.

Du musst die Parameter, die Du per Kommandozeile übergeben willst, über den Parameter String[] args in der main-Methode auswerten. Dann musst Du dafür sorgen, dass diese Parameter auch von Deiner Webseite an das Batchskript übergeben werden. Und dann musst Du dafür sorgen, dass im Batchfile die übergebenen Parameter transportiert werden. Dein Aufruf geht davon aus, dass es System Properties mit den entsprechenden Namen gibt. Ich habe die Syntax jetzt nicht im Kopf, aber die Übergabeparameter an ein Batchskript erhältst Du anders (evtl. $1, ein Tutorial über Windows Batchprogrammierung hilft weiter).

Soll das eine private Spielerei sein? Alles andere wäre nämlich absoluter Unfug. So ein Setup darf im geschäftlichen Umfeld nicht auftauchen, weil Du zu viele Vorannahmen treffen musst (Verfügbarkeit des korrekten OS, Verfügbarkeit der Batchdatei, entsprechende Rechte des Users, ...)

Peter

P.S.: Kann es sein dass ich bei jedem Aufruf vorher mein .java compilieren muss mit den jeweils neuen eingaben? und dann erst ausführen kann?

Gott bewahre, nein.

Ist das wirklich nur eine class-Datei oder ein jar? Für ein jar gibts extra einen Parameter für javaw.

Ist nur ne class datei.

Habs bei post jetz so gelöst das ich einfach das java programm starte ohne parameter und dann mittels standarteingabe mir die parameter hole und splitte.

Trotzdem vielen dank

Um eine Class-Datei mit entsprechender Main-Methode(startbare JAVA-Klasse) zu laden sollten folgende Befehle eigentlich funzen:


Der ClassName ist der Name der Java-Class-Datei 

(MIT EXAKTER SCHREIBWEISE => Case Sensitiv)

ohne die Endung .class!!


mit Konsoleneinblendung:


java ClassName param1 param2 param3 param4...etc.


ohne Konsoleneinblendung (für Programme mit eigener GUI)


javaw ClassName param1 param2 param3 param4...etc.

Es ist von Vorteil den JAVA-Bin-Path in der Path-Variable einzutragen.

Außerdem:

Das Programm muss natürlich auch so geschrieben sein, dass es Parameter überhaupt beachtet. Alles was nach dem Class-Name auf der Konsole geschrieben wird, wird der Main-Methode als String-Array übergeben. Wobei die einzelnen Parameter nach Leerzeichen getrennt werden (es sei denn sie stehen in Anführungszeichen - das zählt dann als ein Parameter).

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.