2014-06-09 9 views
7

Hat jemand versucht, die Swift REPL innerhalb einer lokalen oder Remote-SSH-Sitzung auszuführen?Kann die Swift REPL innerhalb einer SSH-Sitzung ausgeführt werden?

xcrun swift läuft sehr gut in einer lokalen Terminal-Sitzung, nicht aber für mich mit

error: failed to launch REPL process: process exited with status -1) (lost connection)

in einer SSH-Sitzung (entweder aus der Ferne via iPad oder wenn sie in localhost direkt auf meinem Desktop Mac ssh'd).

+0

was ist der Befehl ssh? versuchst du, die REPL direkt oder in einer Login-Shell wie bash auszuführen? – Thilo

Antwort

7

Das Problem ist, dass OSX Sie versucht, Ihr Passwort grafisch zu veranlassen, aber es kann nicht tun das über SSH. Um dies zu umgehen, müssen Sie den Entwicklermodus auf dem Computer aktivieren. Sie haben es wahrscheinlich (unwissentlich) gemacht, indem Sie ein Projekt in Xcode debuggen, das Sie auffordert, den Entwicklermodus zu aktivieren.

Developer mode prompt

Sie können dies auch über die Befehlszeile (einschließlich über SSH) ausführen:

sudo /usr/sbin/DevToolsSecurity --enable 
+0

Danke, Kevin, das ist sehr aufschlussreich). –

1

swift Unter der Annahme ist in der Shell-Pfad:

$ ssh -t localhost swift 
Password: 
Welcome to Swift! Type :help for assistance. 
    1> 1 
$R1: Int = 1 
    2> var foo = 10 
foo: Int = 10 
    3> foo + 1 
$R2: Int = 11 

und aus der Ferne:

$ ssh -t [email protected] swift 
Password: 
Welcome to Swift! Type :help for assistance. 
    1> 1 
$R1: Int = 1 
    2> 10 
$R2: Int = 10 
    3> 
+0

Danke! Die REPL funktioniert jetzt gut für mich innerhalb einer SSH-Sitzung (sowohl von Terminal zu localhost, als auch von meinem iPad mit Eingabeaufforderung). Vielleicht musste ich meinen Mac nur neu starten, nachdem ich XCode 6 installiert oder die Umgebung auf XCode 6 umgestellt hatte. –

+0

Würde mich über eine 'up vote' freuen ( – GoZoner