Борьба, чтобы найти текущий каталог при создании исполняемого файла nw.js.Как получить текущий каталог для исполняемого файла nw.js
Я создал приложение сервера Mac с сочетанием html и Javascript и большого количества использования узла node.js. У меня есть два xml-файла, которые сервер обращается и которые находятся в той же папке, что и приложение.
Когда я запускаю приложение следующим образом: ./nwjs.app/Contents/MacOS/nwjs. и найдите текущий каталог следующим образом: var workFolder = process.cwd(); , тогда моя рабочая папка - это место, где находятся файлы приложения и xml.
Однако, если я следую инструкциям 'package and distribute' (создайте файл .nw, назовите его app.nw и поместите содержимое/ресурсы), а затем запустите исполняемый файл .app, я получаю следующее: рабочая папка: /private/var/folders/3x/2hq40kzs59q8gj6yfn4ktj940000gn/T/.io.nwjs.nw.HcwnF2
Я предполагаю, что контекст изменился. Поэтому я искал альтернативы для получения текущего каталога. Я попробовал: var workingFolder = global .__ dirname; и получил тот же результат. Затем: var workFolder = process.env.PWD; и получил undefined (хотя это сработало для «неупакованной» версии)
Как получить текущий каталог?
Любые идеи были бы высоко оценены!
Я попробовал ваше предложение, и теперь получаем следующее: –
/Пользователи/richardfoss/Documents/Immergo.app/Содержание/Версии/50.0.2661.75/nwjs Helper.app/Contents/MacOS –
Я переименовал nwjs.app в Immergo.app. Теперь я могу отсканировать эту строку для «Immergo.app» и извлечь текущий каталог. Так что очень полезно, спасибо, но все еще интересно, есть ли способ получить «запуск» каталога без этого, а также хотел бы знать, почему выполняется nwjsHelper. –