Открыть несколько экземпляров STS через командную строку на Mac? - PullRequest
0 голосов
/ 23 октября 2018

Я пытаюсь запустить несколько версий STS со своими собственными рабочими пространствами с помощью аргументов командной строки и попытался this в качестве ссылки.

В результате получается:

$open -a ~/Applications/STS.app --args -clean
FSPathMakeRef(/Users/xxx/Applications/STS.app) failed with error -43.

Где находится исполняемый файл для STS?

Я нахожусь на MacOS High Sierra v.10.13.6

Насколько я помню, STS изначально был загружен какspring-tool-suite-3.9.3.RELEASE-e4.7.3-macosx-cocoa-x86_64.dmg и установлен таким образом.

Я читал, что на Mac можно щелкнуть правой кнопкой мыши на .app и «Показать содержимое пакета», которые я пробовал:

enter image description here

Однако доступ к нему из командной строки по-прежнему не работает:

$ls -la ~/Applications/STS.app/Contents
ls: /Users/simeonleyzerzon/Applications/STS.app/Contents: No such file or directory

В соответствии с комментарием @ greg-449, я сейчас пытаюсь открыть STS и указать его другомурасположение рабочей области:

$ open -a /Applications/STS.app -data /temp
open: invalid option -- d
Usage: open [-e] [-t] [-f] [-W] [-R] [-n] [-g] [-h] [-s <partial SDK name>][-b <bundle identifier>] [-a <application>] [filenames] [--args arguments]
Help: Open opens files from a shell.
      By default, opens each file using the default application for that file.
      If the file is in the form of a URL, the file will be opened as a URL.
Options:
      -a                Opens with the specified application.
      -b                Opens with the specified application bundle identifier.
      -e                Opens with TextEdit.
      -t                Opens with default text editor.
      -f                Reads input from standard input and opens with TextEdit.
      -F  --fresh       Launches the app fresh, that is, without restoring windows. Saved persistent state is lost, excluding Untitled documents.
      -R, --reveal      Selects in the Finder instead of opening.
      -W, --wait-apps   Blocks until the used applications are closed (even if they were already running).
          --args        All remaining arguments are passed in argv to the application's main() function instead of opened.
      -n, --new         Open a new instance of the application even if one is already running.
      -j, --hide        Launches the app hidden.
      -g, --background  Does not bring the application to the foreground.
      -h, --header      Searches header file locations for headers matching the given filenames, and opens them.
      -s                For -h, the SDK to use; if supplied, only SDKs whose names contain the argument value are searched.
                        Otherwise the highest versioned SDK in each platform is used.

1 Ответ

0 голосов
/ 23 октября 2018

Applications - это /Applications - в корневой файловой системе, а не в вашем домашнем каталоге, поэтому нет ~.

Так что просто:

ls -la /Applications/STS.app/Contents

Для вашей команды open выотсутствует опция --args, которая сообщает open, остальная часть командной строки предназначена для приложения:

open -a /Applications/STS.app --args -data /temp
...