2017-12-22 7 views
0

Ich möchte py4j auf meinem Linux-Host ausführen.Wie starte ich den py4j GatewayServer von der Linux Shell?

Meine Java-Muskeln sind schwach, aber ich kenne Python.

ich durch die Installation von Anaconda 5.0.1 gestartet, die mir Python 3.6.3

Next I mit einem Shell-Befehl installiert das py4j Paket gibt:

conda install py4j 

Dann habe ich installiert Java SDK und steckte es hier :

$HOME/jdk/ 

Und ich env Variablen gesetzt:

export JAVA_HOME=${HOME}/jdk 
export PATH="${JAVA_HOME}/bin:${PATH}" 

Ich benutze dieses Shell-Befehl, es zu sehen:

java -version 

Dort heißt es:

java version "1.8.0_152" 
Java(TM) SE Runtime Environment (build 1.8.0_152-b16) 
Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode) 

Als nächstes studierte ich diese Seite:

https://www.py4j.org/index.html

Es fragt mich ein starten Server, der auf dieser Java-Datei beruht:

public class AdditionApplication { 

    public int addition(int first, int second) { 
    return first + second; 
    } 

    public static void main(String[] args) { 
    AdditionApplication app = new AdditionApplication(); 
    // app is now the gateway.entry_point 
    GatewayServer server = new GatewayServer(app); 
    server.start(); 
    } 
} 

Frage: Unter Linux, welche Shell-Befehle sollte ich ausführen, um den Server in der oben genannten Java-Datei zu starten?

Antwort

0

Ich habe Google verwendet, um ein wenig über Shell-Befehle Javac und Java zu lernen. Dann schrieb ich ein Shell-Skript, das gut funktioniert:

#!/bin/bash 

# ~/cryp/java_python/AdditionApplication.bash 
# This script should start a py4j server. 
# Ref: 
# https://www.py4j.org/index.html 

cd ~/cryp/java_python/ 

export JAVA_HOME=${HOME}/jdk 
export PATH="${JAVA_HOME}/bin:${PATH}" 

javac -cp py4j0.10.6.jar py4j/examples/AdditionApplication.java 
java -cp py4j0.10.6.jar:. py4j.examples.AdditionApplication 

exit 
Verwandte Themen