2016-06-08 4 views
0

Ich versuche, einige veröffentlichte Java-Code, der eine SBML (Systems Biology Markup Language) -Datei in drei Textdateien konvertiert. Das Ausführen von libSBML-Code erfordert die Verknüpfung mit einer JAR-Datei "libsbmlj.jar". Der Code funktioniert in Eclipse, aber ich möchte den Code in Powershell ausführen, um meine biologische Simulation einfach ausführen zu können (alle anderen Befehle im Workflow arbeiten in Powershell). Wenn ich versuche, und den Code in Powershell mithilfe der folgenden Befehle ausführen:Laden einer ausführbaren JAR-Datei in Windows 10 Powershell

javac ToyGenInput.java 
java ToyGenInput 

wie in den Codeanweisungen angegeben ich die folgende Fehlermeldung erhalten:

Error: unable to load the file libsbmlj.jar. It is likely 
your LD_LIBRARY_PATH environment variable or CLASSPATH variable 
does not include the directory containing the libsbmlj.jar file. 

ich versucht habe, eine separate Umgebungsvariable „Hinzufügen CLASSPATH "(Ich glaube LD_LIBRARY_PATH ist für Unix-basierte Systeme) und fügt den Ordnerpfad zur vorhandenen" PATH "-Variablen hinzu, bekomme aber immer noch denselben Fehler. Das Kopieren der .jar-Datei in das aktuelle Verzeichnis funktionierte ebenfalls nicht. Hat jemand irgendwelche Vorschläge, wie man das beheben kann?

Vielen Dank für Ihre Zeit!

NB: Link zu dem veröffentlichten Code: http://www.comp.nus.edu.sg/~rpsysbio/pada

Die Datei "ToyGenInput.java" des folgenden Codes besteht, eine Sekundär-Datei "SBML2SPA.java" Aufruf:

public class ToyGenInput{ 
    public static void main(String[] args){ 
    SBML2SPA ss=new SBML2SPA("./models/toy/toy.xml"); 
    ss.printODEs("./models/toy/"); 
    ss.printPar("./models/toy/"); 
    ss.printVar("./models/toy/"); 
    } 
} 
+0

Die Variable CLASSPATH ist schwierig. Hinweis auf [this] (https://docs.oracle.com/javase/8/docs/technotes/tools/windows/claspathpath.html) -Website, suchen Sie nach den Klassenpfad-Platzhaltern, wie sie für JAR-Dateien benötigt werden –

+0

Sie können Übergeben Sie Classpath-Informationen in der Befehlszeile des Java-Befehls. Hast du das probiert? – rrirower

+0

Vergiss Powershell. Lassen Sie es zunächst für die Eingabeaufforderung funktionieren, sobald dies funktioniert, und fahren Sie mit der Powershell fort. – Jimbo

Antwort

0

Ich glaube, Sie sollten nicht den Pfad zur Datei, sondern den Pfad zum Ordner hinzufügen, der das JAR enthält.

+0

Sorry, ich war nicht klar in meinem ursprünglichen Beitrag - das habe ich auch versucht. Ich habe meinen ursprünglichen Post bearbeitet. – Laura

+0

Haben Sie versucht, Klassenpfad für 'Java' Befehl wie "javac -cp libsbmlj.jar ToyGenInput" anzugeben? – Stan

+0

Dies schien das Klassenpfadproblem zu überwinden (Danke!), Aber es wurde ein neuer Fehler ausgelöst: "ToyGenInput.java:13: error: can not find symbol." Seltsamerweise scheint es "s" nicht zu erkennen? – Laura

Verwandte Themen