2016-04-01 5 views
10

Ich habe es schwer, SBT in einem "schreibgeschützten" Verzeichnis (Verzeichnis habe ich Berechtigungen, aber ich kann/sollte nicht schreiben).Ändern Sie alle SBT Zielverzeichnisse auf die Außenseite der Quelle

Ich möchte im Grunde alle Zielverzeichnisse an einen anderen Ort verschieben.

Halb das Problem mit gelöst:

target := file("</full/path/to/new/location>") 

aber es schafft noch Zielverzeichnisse innerhalb des project/* Verzeichnis.

Ich möchte auch, dass dies im run-Befehl getan wird, nicht durch Ändern der sbt-Dateien. Der aktuelle Befehl ich verwende ist:

sbt 'set target := file("</full/path/to/new/location>")' compile 

eine Art systemweite Konfiguration sbt Hinzufügen wäre eine Möglichkeit, aber ich konnte auch nicht damit es funktioniert.

Irgendwelche Ideen, um dies zu erreichen?

+0

das Projekt Build Build zu konfigurieren, müssten Sie Ziel in 'Projekt/build.sbt' ändern - machen Sie mindestens eine Zeitzugriff auf Veränderung haben Der Build deines Builds? –

+0

Eine andere (bessere?) Option ist vielleicht, ein ganzes neues Verzeichnis zu verwenden und nur einen Link zu Ihren Quellen und Ressourcen zu erstellen. Funktioniert das? –

+0

Interagieren mit dem Dateisystem ist nicht ideal – rtfpessoa

Antwort

0

So, hier ist mein Vorschlag Symlinks mit:

$ mkdir -p have_access/project 
$ ln -sr read_only/src have_access/ 
$ ln -sr read_only/build.sbt have_access/ 
$ ln -sr read_only/project/build.properties have_access/project/ 
$ cd have_access 
$ sbt test 
+1

Interagieren mit dem Dateisystem ist nicht ideal, auf jeden Fall wäre es gültig, systemweite Konfigurationen außerhalb des Quellordners zu haben, aber ich habe auch nicht gefunden, wie es geht. – rtfpessoa

Verwandte Themen