2016-08-27 5 views
1

Я пишу программу быстрого терминала (скажем, это называется «myProject»), которая требует от меня сохранения некоторых файлов. Я хочу, чтобы файлы были сохранены в папке проекта программно.Быстрое сохранение файлов в папку проекта

Я видел in this post такие переменные среды, как $ (PROJECT_DIR), которые дают путь к папке проекта. Я уже проверил, что XCode действительно имеет переменную $ (project_dir) с помощью:

$ xcodebuild -project myProject.xcodeproj -target "myProject" -showBuildSettings 

Но я точно не знаю, как я могу использовать эту переменную в моем фактическом коде. Как если бы я попытался

print($(PROJECT_DIR)) 

Я бы просто получить ошибки:

use of unresolved identifier '$' 
use of unresolved identifier 'PROJECT_DIR' 

Как получить путь к моей папке проекта программно?

ответ

0

Это не переменные среды, доступные вашей программе во время выполнения; они используются внутри Xcode для процесса сборки.

Ваша программа находится по адресу Bundle.main.executableURL (NSBundle.mainBundle().executableURL in Swift 2) во время работы (executablePath также предлагается, если хотите).

Если у вас есть дополнительные файлы, к которым должна быть обращена ваша программа, они должны находиться в известном месте. Вы можете использовать стандартный каталог в файловой системе, такой как/usr/local/bin, или вы можете создать пакет и скопировать эти ресурсы в пакет как часть процесса сборки.

+0

Спасибо за разъяснение. Но NSBundle.mainBundle(). ExecutableURL не дает мне путь к папке проекта, которую я хотел. Это дает мне: "/ Users/_____/Library/Developer/Xcode/DerivedData/Когтю-ejedpqkbwdlfzbdmdfbmlwxroxft/Build/Products/Debug/MyProject" Вместо этого я хотел: «/ Users/_____/Desktop/MyProject или где расположение файла myProject.xcodeproj является – TheNumberDevil

+0

Почему вашей скомпилированной программе нужна каталог, где находится исходный код? –

+0

Там есть питон скрипт в папке проекта, графики вывода файлов – TheNumberDevil

Смежные вопросы