Исполняемый файл не найден, очистите поле команды запуска в настройках jvm

Обновлено: 03.07.2024

Распространенная проблема, с которой сталкиваются новые разработчики Java, заключается в том, что их программы не запускаются с сообщением об ошибке: Не удалось найти или загрузить основной класс .

Что это значит, в чем причина и как это исправить?

Обратите внимание, что это вопрос с самостоятельным ответом, который предназначен для общих вопросов и ответов для новых пользователей Java. Мне не удалось найти существующие вопросы и ответы, которые адекватно освещают это (IMO).

59 ответов 59

Синтаксис команды Java

Прежде всего вам нужно понять, как правильно запускать программу с помощью команды java (или javaw ).

Обычный синтаксис 1 таков:

где — параметр командной строки (начинается с символа "-"), полное имя класса Java и произвольный аргумент командной строки, который передается вашему приложению.

1 — Есть несколько других синтаксисов, которые описаны в конце этого ответа.

Полное имя (FQN) для класса обычно записывается так же, как и в исходном коде Java; например

Однако некоторые версии команды java позволяют использовать косые черты вместо точек; например

который (как ни странно) выглядит как путь к файлу, но таковым не является. Обратите внимание, что термин полное имя является стандартной терминологией Java. не то, что я только что придумал, чтобы запутать вас :-)

Вот пример того, как должна выглядеть команда Java:

Приведенное выше заставит команду java сделать следующее:

  1. Выполните поиск скомпилированной версии класса com.acme.example.ListUsers.
  2. Загрузить курс.
  3. Проверьте, что у класса есть основной метод с подписью, типом возвращаемого значения и модификаторами, заданными public static void main(String[]) . (Обратите внимание, имя аргумента метода НЕ является частью подписи.)
  4. Вызовите этот метод, передав ему аргументы командной строки ("fred", "joe", "bert") в виде String[] .

Причины, по которым Java не может найти класс

Когда вы получаете сообщение "Не удалось найти или загрузить основной класс. ", это означает, что первый шаг не выполнен. Команде java не удалось найти класс. И действительно, «.» в сообщении будет полным именем класса, которое ищет java.

Почему может быть невозможно найти класс?

Первой вероятной причиной может быть неправильное имя класса. (Или . правильное имя класса, но в неправильной форме.) Рассматривая приведенный выше пример, вот несколько неправильных способов указать имя класса:

Когда класс объявлен в пакете, таком как com.acme.example , вы должны использовать полное имя класса, включая имя пакета в команде java; например

Вторая вероятная причина заключается в том, что имя класса указано правильно, но команда java не может найти класс. Чтобы понять это, вам нужно понять концепцию «пути к классам». Это хорошо объясняется в документации Oracle:

Итак. если вы правильно указали имя класса, следующее, что нужно проверить, это то, что вы правильно указали путь к классам:

  1. Прочитайте три документа, ссылки на которые приведены выше. (Да. ПРОЧИТАЙТЕ их! Важно, чтобы Java-программист понимал хотя бы основы того, как работают механизмы пути к классам Java.)
  2. Посмотрите на командную строку и/или переменную среды CLASSPATH, которая действует при запуске команды java. Проверьте правильность имен каталогов и файлов JAR.
  3. Если в пути к классам есть относительные пути, убедитесь, что они разрешаются правильно . из текущего каталога, действующего при выполнении команды java.
  4. Убедитесь, что класс (упомянутый в сообщении об ошибке) может находиться в действующем пути к классам.
  5. Обратите внимание, что синтаксис пути к классам отличается для Windows, Linux и Mac OS. (Разделитель пути к классам: ; в Windows и : в других. Если вы используете неправильный разделитель для своей платформы, вы не получите явного сообщения об ошибке. Вместо этого вы получите несуществующий файл или каталог на пути, который будет молча игнорируется.)

Когда вы помещаете каталог в путь к классам, он теоретически соответствует корню полного пространства имен. Классы расположены в структуре каталогов ниже этого корня, путем сопоставления полного имени с путем. Так, например, если «/usr/local/acme/classes» находится на пути к классу, то, когда JVM ищет класс с именем com.acme.example.Foon , она будет искать файл «.class» с этим путь:

Если вы поместите "/usr/local/acme/classes/com/acme/example" в путь к классам, JVM не сможет найти класс.

Если полное доменное имя ваших классов com.acme.example.Foon , то JVM будет искать "Foon.class" в каталоге "com/acme/example":

Если ваша структура каталогов не соответствует имени пакета в соответствии с приведенным выше шаблоном, JVM не найдет ваш класс.

Если вы попытаетесь переименовать класс, переместив его, это также не удастся . но трассировка стека исключения будет другой. Можно сказать что-то вроде этого:

поскольку полное доменное имя в файле класса не соответствует тому, что ожидает найти загрузчик класса.

Чтобы привести конкретный пример, предположим, что:

  • вы хотите запустить класс com.acme.example.Foon,
  • полный путь к файлу: /usr/local/acme/classes/com/acme/example/Foon.class,
  • Ваш текущий рабочий каталог — /usr/local/acme/classes/com/acme/example/ ,
  • В большинстве выпусков Java параметр -classpath можно сократить до -cp. Проверьте соответствующие записи вручную для java , javac и т. д.
  • Хорошо подумайте, выбирая между абсолютными и относительными путями в путях к классам. Помните, что относительный путь может "сломаться" при изменении текущего каталога.

Путь к классам должен включать все другие (несистемные) классы, от которых зависит ваше приложение. (Системные классы располагаются автоматически, и вам редко нужно об этом заботиться.) Чтобы основной класс загружался корректно, JVM необходимо найти:

  • сам класс.
  • все классы и интерфейсы в иерархии суперклассов (например, класс Java присутствует в пути к классам, но запуск завершается с ошибкой: не удалось найти или загрузить основной класс)
  • все классы и интерфейсы, на которые ссылаются с помощью переменных или объявлений переменных, вызовов методов или выражений доступа к полям.

(Примечание: спецификации JLS и JVM допускают некоторую возможность для JVM "ленивой" загрузки классов, и это может повлиять на возникновение исключения загрузчика классов.)

Иногда случается, что кто-то помещает файл исходного кода не в ту папку в своем дереве исходного кода или пропускает объявление пакета. Если вы сделаете это в IDE, компилятор IDE сразу сообщит вам об этом. Точно так же, если вы используете приличный инструмент сборки Java, инструмент запустит javac таким образом, чтобы обнаружить проблему. Однако, если вы создаете Java-код вручную, вы можете сделать это так, что компилятор не заметит проблемы, а результирующий файл «.class» окажется не в том месте, где вы ожидаете.< /p>

Все еще не можете найти проблему?

Есть много вещей, которые нужно проверить, и легко что-то упустить. Попробуйте добавить параметр -Xdiag в командную строку java (в первую очередь после java ). Он выведет различные сведения о загрузке классов, и это может подсказать вам, в чем заключается настоящая проблема.

Кроме того, рассмотрите возможные проблемы, вызванные копированием и вставкой невидимых символов или символов, отличных от ASCII, с веб-сайтов, документов и т. д. И рассмотрим «гомоглифы», когда две буквы или символы выглядят одинаково. но это не так.

Вы можете столкнуться с этой проблемой, если у вас есть недействительные или неправильные подписи в META-INF/*.SF. Вы можете попробовать открыть .jar в своем любимом ZIP-редакторе и удалить файлы из META-INF, пока все, что у вас есть, не будет вашим MANIFEST.MF . Однако это НЕ РЕКОМЕНДУЕТСЯ вообще. (Недействительная подпись может быть результатом того, что кто-то внедрил вредоносное ПО в исходный подписанный файл JAR. Если вы удалите недействительную подпись, вы заразите свое приложение вредоносным ПО!) Рекомендуемый подход — получить файлы JAR с действительным подписи или воссоздать их из (подлинного) оригинального исходного кода.

Альтернативные синтаксисы для Java

Существует три альтернативных варианта синтаксиса для запуска программ Java с помощью команды java.

Синтаксис, используемый для запуска "исполняемого" JAR-файла, следующий:

Имя класса точки входа (т. е. com.acme.example.ListUser ) и путь к классам указаны в МАНИФЕСТЕ файла JAR.

Синтаксис запуска приложения из модуля (Java 9 и более поздние версии) следующий:

Имя класса точки входа либо определяется самим классом, либо задается необязательным .

Начиная с Java 11 и выше, вы можете использовать команду java для компиляции и запуска одного файла исходного кода, используя следующий синтаксис:

где (обычно) находится файл с расширением ".java".

Для получения дополнительной информации см. официальную документацию по команде java для используемой версии Java.

Типичная IDE Java поддерживает запуск приложений Java в самой IDE JVM или в дочерней JVM. Они обычно защищены от этого конкретного исключения, поскольку среда IDE использует свои собственные механизмы для создания пути к классам во время выполнения, определения основного класса и создания командной строки Java.

Однако это исключение все же может возникнуть, если вы делаете что-то за пределами IDE.Например, если вы ранее настроили средство запуска приложений для своего Java-приложения в Eclipse, а затем переместили JAR-файл, содержащий «основной» класс, в другое место в файловой системе, не сообщая Eclipse , Eclipse непреднамеренно запустит JVM с неверным путем к классам.

Короче говоря, если вы столкнулись с этой проблемой в IDE, проверьте наличие таких вещей, как устаревшее состояние IDE, неработающие ссылки на проекты или неверные настройки программы запуска.

Также IDE может просто запутаться. IDE — это чрезвычайно сложные программные продукты, состоящие из множества взаимодействующих частей. Многие из этих частей используют различные стратегии кэширования, чтобы сделать IDE в целом отзывчивой. Иногда это может пойти не так, и одним из возможных симптомов являются проблемы при запуске приложений. Если вы подозреваете, что это может произойти, стоит попробовать другие способы, например перезапустить IDE, перестроить проект и т. д.

IntelliJ IDEA использует конфигурации запуска/отладки для запуска, отладки и тестирования вашего кода. Каждая конфигурация представляет собой именованный набор свойств запуска, которые определяют, что выполнять и какие параметры и среду следует использовать.

Существует два типа конфигураций запуска/отладки:

Временный — создается каждый раз, когда вы запускаете класс, не имеющий постоянной конфигурации. Он обеспечивает необходимый минимум, позволяющий запускать класс с методом main().

Постоянный — создается явно из шаблона или путем сохранения временной конфигурации. Постоянные конфигурации остаются частью вашего проекта, пока вы их не удалите.

Поэтому всякий раз, когда вы запускаете/отлаживаете или тестируете свой код, IntelliJ IDEA либо использует существующую постоянную конфигурацию запуска/отладки, либо создает новую временную.

Значки постоянных конфигураций непрозрачны, а значки временных конфигураций полупрозрачны.

Максимальное количество временных конфигураций — 5. Старые автоматически удаляются при добавлении новых. При необходимости вы можете увеличить этот лимит в Settings/Preferences | Дополнительные настройки | ИДЕ | Временное ограничение конфигураций запуска/отладки .

Создание постоянных конфигураций запуска/отладки

IntelliJ IDEA предоставляет следующие способы создания постоянной конфигурации запуска/отладки:

Создайте из шаблона или скопируйте существующую конфигурацию.

Создать постоянную конфигурацию запуска/отладки из исполняемого метода или класса

Поместите курсор в объявление исполняемого метода или класса (например, класса с методом main() или набора тестов) и нажмите Alt+Enter . IntelliJ IDEA создает постоянную конфигурацию запуска/отладки соответствующего типа.

Настройте параметры конфигурации запуска/отладки. Подробное описание шаблона см. в разделе Список конфигураций запуска/отладки.

Сохранить временную конфигурацию как постоянную

Выберите временную конфигурацию в переключателе конфигурации запуска/отладки, а затем нажмите Сохранить конфигурацию.

Можно также выбрать временную конфигурацию в диалоговом окне "Выполнение/отладка конфигураций" и нажать на панели инструментов.

IntelliJ IDEA предоставляет шаблоны конфигурации запуска/отладки для разных языков, инструментов и платформ. Список доступных шаблонов зависит от установленных и включенных подключаемых модулей.

Создать конфигурацию запуска/отладки из шаблона

Эта процедура описывает шаги по созданию конфигурации запуска/отладки с использованием шаблона приложения. Это наиболее распространенный шаблон для Java, который соответствует компиляции вашей программы с помощью javac и последующему ее запуску с помощью java. Другие шаблоны см. в разделе Список конфигураций запуска/отладки.

В главном меню выберите «Выполнить | Изменить конфигурации. Либо нажмите Alt+Shift+F10 , затем 0 .

В диалоговом окне «Выполнить/отладить конфигурацию» щелкните панель инструментов или нажмите клавиши ALT+ВСТАВКА . В списке показаны шаблоны конфигурации запуска/отладки. Выберите приложение .

Укажите имя конфигурации запуска/отладки в поле Имя. Это имя будет отображаться в списке доступных конфигураций запуска/отладки.

В разделе Сборка и запуск укажите параметры, перечисленные ниже. Чтобы получить доступ к полям с помощью клавиатуры, удерживайте клавишу Alt и используйте сочетание клавиш в соответствии с появившимися подсказками.

JDK или JRE — JDK/JRE, который будет использоваться для запуска вашей программы.

Основной класс — основной класс определяет точку входа вашего приложения. Чтобы класс можно было использовать в качестве основного, он должен содержать метод public static void main(String[] args).

Аргументы программы — аргументы командной строки, которые будут переданы вашему приложению. Во время выполнения они будут доступны в виде строк в массиве args. Если внутри аргумента есть пробелы, заключите его в двойные кавычки, например: arg1 arg2 "длинный аргумент" .

Большинство полей имеют параметры "Развернуть" и "Макросы". Expand облегчает редактирование, когда поле становится слишком длинным. Макросы избавляют вас от утомительной работы по вставке и настройке параметров, которые могут меняться со временем.

Если вы хотите точно настроить способ запуска вашего приложения, нажмите «Изменить параметры», чтобы получить доступ к более продвинутым функциям настройки запуска/отладки. Когда вы выбираете элемент, он добавляется в диалоговое окно. Точно так же вы можете удалить неиспользуемые параметры.

Доступны следующие параметры:

Разрешить несколько экземпляров — выберите, если хотите разрешить одновременный запуск нескольких экземпляров этой программы. Если этот параметр отключен, попытка перезапустить приложение приведет к завершению активного сеанса.

Если строка становится слишком длинной, нажмите «Изменить переменные среды» . Откроется отдельное диалоговое окно, в котором вы можете управлять переменными в виде таблицы, копировать/вставлять их и т. д.

Перенаправить ввод — позволяет вам получать ввод программы из файла, а не из консоли.

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

Добавить параметры ВМ — укажите параметры ВМ для запуска приложения. Опции разделяются пробелами. Если внутри опции есть пробелы, заключите ее в двойные кавычки. Если двойные кавычки являются частью параметра, экранируйте их, используя обратную косую черту, например, -Dsome_option=\"value\" . Кроме того, вы можете передать параметру переменные окружения, например, -Dsome_option=$ .

Использовать путь к классам модуля — модуль, путь к классам которого будет использоваться. Путь к классам, указанный в параметрах виртуальной машины, имеет приоритет над этим.

Сократить командную строку — указывает средство сокращения командной строки. Используйте этот параметр, если программа не запускается из-за того, что путь к классам превышает ограничение, установленное ОС. Вы можете передать путь к классам во временный JAR, текстовый файл или использовать путь по умолчанию из idea/workspace.xml (для устаревших проектов).

Журналы — информацию о настройке ведения журналов см. в разделе Просмотр журналов.

Параметры покрытия кода — сведения о настройке покрытия см. в разделе Настройка покрытия.

Перед запуском — определите, хотите ли вы выполнить какие-либо определенные действия перед запуском приложения, например, скомпилировать измененные исходные коды или запустить сценарий Ant или Maven.

Примените изменения и закройте диалоговое окно.

Общий доступ к конфигурациям запуска/отладки

Если вы работаете в команде, вы можете поделиться своими конфигурациями запуска/отладки, чтобы ваши коллеги могли запускать приложение, используя ту же конфигурацию, или дать им возможность удаленно подключаться к запущенному вами процессу.

Для этих целей IntelliJ IDEA предоставляет механизм для хранения ваших конфигураций запуска/отладки в виде файлов проекта и обмена ими через VCS. Тот же механизм можно использовать, когда вы хотите отправить свою конфигурацию в виде файла кому-то другому. Это экономит много времени, поскольку конфигурации запуска/отладки иногда становятся сложными, а их синхронизация вручную может быть утомительной и подверженной ошибкам.

Устаревшие проекты на основе .ipr не поддерживают отдельные конфигурации запуска/отладки. В устаревших проектах вы можете поделиться всеми конфигурациями сразу, только добавив файл .ipr в систему контроля версий.

В главном меню выберите «Выполнить | Изменить конфигурации. Либо нажмите Alt+Shift+F10 , затем 0 .

Выберите конфигурацию запуска/отладки, которой хотите поделиться, включите параметр «Сохранить как файл проекта» и укажите место, где будет храниться файл конфигурации.

Если требуется совместимость с IntelliJ IDEA 2019.3 и более ранними версиями, сохраните файл в расположении по умолчанию.

(Необязательно) Если каталог .idea добавляется к игнорируемым файлам VCS, подпапка .idea/runConfigurations также будет игнорироваться. Если вы используете Git для своего проекта, вы можете поделиться только .idea/runConfigurations и оставить .idea игнорируемым, изменив .gitignore следующим образом:

Включение параметра "Хранить как файл проекта" ничего не отправляет в систему контроля версий. Чтобы конфигурации запуска/отладки попали в общий репозиторий, вы должны зарегистрировать их, как и другие файлы с версиями.

Чтобы узнать, как импортировать конфигурации запуска/отладки из VCS, см. раздел Управление версиями.

Запуск/отладка шаблонов конфигурации

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

Изменение значений шаблона по умолчанию не влияет на уже существующие конфигурации запуска/отладки.

Настройте значения по умолчанию для шаблона

В главном меню выберите «Выполнить | Изменить конфигурации. Либо нажмите Alt+Shift+F10 , затем 0 .

На левой панели диалогового окна конфигурации запуска/отладки нажмите Изменить шаблоны конфигурации… .

В открывшемся диалоговом окне «Выполнить/отладить шаблоны конфигурации» выберите тип конфигурации.

Укажите нужные параметры по умолчанию и нажмите OK, чтобы сохранить шаблон.

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

Составные конфигурации запуска/отладки

Предположим, вы хотите запустить несколько конфигураций запуска/отладки одновременно. Например, вы можете захотеть запустить несколько конфигураций разных типов или группу тестовых конфигураций. Это поведение можно настроить с помощью составной конфигурации запуска/отладки.

Порядок выполнения не гарантируется. Если вам нужно, чтобы конфигурации запуска/отладки выполнялись последовательно, определите последовательность в области Перед запуском конфигурации запуска/отладки, которая должна выполняться последней.

Создать составную конфигурацию запуска/отладки

В главном меню выберите «Выполнить | Изменить конфигурации. Либо нажмите Alt+Shift+F10 , затем 0 .

В диалоговом окне "Выполнение/отладка конфигураций" нажмите или нажмите клавиши ALT+Insert , затем выберите "Составной" .

Укажите имя конфигурации запуска/отладки в поле Имя. Это имя будет отображаться в списке доступных конфигураций запуска/отладки.

Чтобы включить новую конфигурацию запуска/отладки в составную конфигурацию, нажмите кнопку "Добавить" и выберите нужную из списка.

Примените изменения.

Запустить/отладить папки конфигурации

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

После группировки конфигурации запуска/отладки отображаются в списке в соответствующих папках.

Rc folders

Создайте папку для конфигураций запуска/отладки

В главном меню выберите «Выполнить | Изменить конфигурации. Либо нажмите Alt+Shift+F10 , затем 0 .

В диалоговом окне «Выполнение/отладка конфигураций» выберите тип конфигурации и щелкните на панели инструментов. Создается новая пустая папка для выбранного типа.

Укажите имя папки в текстовом поле справа или примите имя по умолчанию.

Выберите нужные конфигурации запуска/отладки и переместите их в целевую папку.

Примените изменения. Если папка пуста, она не будет сохранена.

Когда папка вам больше не нужна, вы можете удалить ее Удалить . Конфигурации запуска/отладки, сгруппированные в этой папке, будут перемещены в корень соответствующего типа конфигурации запуска/отладки.

В этой главе описывается, как запустить клиент JMC и использовать его функции.

Клиент JMC — это основное приложение, из которого вы подключаетесь к JVM и запускаете инструменты, включенные в Java Mission Control. Вы можете запустить клиент JMC либо как отдельное приложение, либо как подключаемый модуль Eclipse. Убедитесь, что вы запускаете клиент JMC в безопасной среде, поскольку он не включает диспетчер безопасности и не работает с ним.

2.1 Запуск клиента Java Mission Control

Исполняемый файл клиента JMC находится в каталоге bin пути установки Java SE Development Kit (JDK) ( JAVA_HOME ). Если каталог JAVA_HOME/bin находится в переменной среды PATH, вы можете запустить клиент JMC, введя jmc в командной строке (оболочке). В противном случае необходимо указать полный путь к исполняемому файлу JMC:

JAVA_HOME/bin/jmc (Linux, OS X)

В Windows ярлык исполняемого файла клиента JMC добавляется в папку Java Development Kit в разделе "Все программы" в меню "Пуск".

В OS X, если вы не можете найти исполняемый файл JMC или найти JMC в Spotlight, вы можете запустить JMC из командной строки, используя /Library/Java/JavaVirtualMachines/jdk version >.jdk/Contents/Home/bin/jmc . Либо используйте Finder, чтобы перейти к /Library/Java/JavaVirtualMachines/jdk version >.jdk/Contents/Home/lib/missioncontrol и дважды щелкните приложение Java Mission Control.

В OS X при запуске исполняемого файла JMC открывается окно терминала. Когда вы закрываете клиент JMC, Терминал остается с текстом [Процесс завершен]. Чтобы избежать этого, откройте «Настройки терминала» , затем откройте вкладку «Настройки», выберите используемую схему, затем перейдите на вкладку «Оболочка» и измените параметр «При выходе из оболочки» на «Закрыть», если оболочка завершилась корректно .

Передача параметров JVM в средство запуска JMC

JMC — это приложение Java, а исполняемый файл клиента JMC — это средство запуска этого приложения. Запуск JMC управляется параметрами, указанными в файле jmc.ini, расположенном в каталоге JAVA_HOME/bin. Аргументы параметра -vmargs в файле jmc.ini — это параметры, которые передаются виртуальной машине JVM, на которой запущено приложение JMC. Вы можете указать эти параметры, чтобы управлять тем, как работает эта JVM. Если вы не хотите изменять файл jmc.ini, вы можете указать параметры JVM в командной строке в качестве аргументов параметра -vmargs команды jmc.

Если для команды jmc указаны другие параметры, параметр -vmargs должен быть указан последним.

Чтобы запустить клиент JMC с собственным набором параметров JVM (переопределяющим параметры, указанные в файле jmc.ini), выполните следующую команду (разделите несколько аргументов пробелами):

аргументы jmc -vmarg

Чтобы запустить клиент JMC с дополнительными параметрами JVM (добавив их к параметрам, указанным в файле jmc.ini), выполните следующую команду (разделите несколько аргументов пробелами):

jmc --launcher.appendVmargs -vmarg аргументы

Использование каталога рабочей области

Если вы хотите скопировать свои настройки для клиента JMC на другой компьютер или другого пользователя или использовать другие предопределенные настройки для разных приложений, добавьте параметр командной строки -data и определите каталог рабочей области при запуске клиента JMC:

jmc -каталог рабочей области данных

2.2 Графический интерфейс клиента Java Mission Control

При первом запуске клиента JMC левая часть окна по умолчанию содержит два представления:

JVM Browser — это подключаемый модуль, который показывает все доступные соединения JVM.

Типы событий содержит список типов событий для выбранной записи полета. Информацию об открытии записи полета см. в разделе интерактивной справки о подключаемом модуле Java Flight Recorder.

Вы можете открыть меню "Окно", выбрать "Показать представление", а затем "Другое", чтобы открыть окно со списком всех доступных представлений. Выберите необходимые виды и нажмите OK, чтобы открыть их. В дополнение к представлениям по умолчанию доступны следующие представления:

Свойства перечисляют свойства элементов, которые вы выбираете в таблицах, включая скрытые свойства, которые не отображаются в таблицах.

Progress View отображает ход выполнения операций, например запись полета.

Справка отображает интерактивную справку по Java Mission Control.

Другая часть окна клиента JMC зарезервирована для области редактора, которая используется для работы с подключаемыми модулями для доступных соединений JVM. Чтобы запустить подключаемый модуль, щелкните правой кнопкой мыши соединение JVM и выберите подключаемый модуль ( Запустить консоль JMX , Открыть исторические данные , Начать запись полета и т. д.).

2.2.1 Вкладки и группы вкладок

Виды и редакторы отображаются в виде вкладок, объединенных в группы вкладок. Вы можете перетаскивать вкладки и группы вкладок в окне клиента JMC, чтобы создать макет, который лучше всего подходит для вас. Вкладки просмотра и группы вкладок можно даже отделить от главного окна.

Вы можете развернуть группу вкладок до размера окна клиента JMC или свернуть ее, чтобы освободить место для других групп вкладок:

Чтобы развернуть группу вкладок, нажмите кнопку "Развернуть" в правом верхнем углу. Группа вкладок увеличивается почти до размера окна клиента JMC, а кнопка «Развернуть» меняется на кнопку «Восстановить». Остальные группы вкладок автоматически сворачиваются.

Чтобы свернуть группу вкладок, нажмите кнопку "Свернуть" в правом верхнем углу. Группа вкладок уменьшится, а кнопка «Свернуть» изменится на кнопку «Восстановить». Другие группы вкладок пропорционально заполняют остальную часть окна клиента JMC.

Чтобы восстановить вкладку в исходное состояние, нажмите кнопку "Восстановить".

Чтобы разделить логически связанную информацию, вкладки редактора разделены на вложенные вкладки (или группы вложенных вкладок), что позволяет детализировать конкретные данные. На некоторых вложенных вкладках справа от названия вложенной вкладки есть кнопки для управления отображаемыми в них данными.

2.2.2 Панели

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

Некоторые панели можно свернуть, чтобы освободить место для других панелей на вкладке (используя кнопку отображения и скрытия черного треугольника рядом с названием панели). Справа от названия панели есть кнопки для добавления и удаления компонентов, обновления данных, переключения режимов, изменения настроек, получения онлайн-справки по панели и т. д.

Большинство панелей уникальны, но некоторые из них похожи для разных вкладок. Информация по использованию каждой панели приведена в описании панели. Чтобы просмотреть эту информацию, нажмите кнопку со знаком вопроса справа от названия панели.

Исполняемая программа, которая интерпретирует пакеты и устанавливает продукты, называется Msiexec.exe. Обратите внимание, что Msiexec также устанавливает уровень ошибки при возврате, который соответствует кодам системных ошибок. Параметры командной строки нечувствительны к регистру.

Параметры командной строки, указанные в следующей таблице, доступны в установщике Windows 3.0 и более ранних версиях. Стандартные параметры командной строки установщика также доступны, начиная с установщика Windows 3.0.

+ — добавить в существующий файл.
! - Сбросить каждую строчку в лог.
"*" — подстановочный знак, регистрирует всю информацию, кроме параметров v и x. Чтобы включить параметры v и x, укажите «/l*vx».

[!Note]
Дополнительную информацию обо всех доступных методах настройки режима ведения журнала см. в разделе Нормальное ведение журнала в разделе Ведение журнала установщика Windows

Параметры /i, /x, /f[p|o|e|d|c|a|u|m|s|v], /j[u|m], /a, /p, / y и /z не должны использоваться вместе. Единственным исключением из этого правила является то, что для исправления административной установки необходимо использовать как /p, так и /a. Опции /t, /c и /g следует использовать только с параметром /j. Опции /l и /q можно использовать с /i, /x, /f[p|o|e|d|c|a|u|m|s|v], /j[u|m], / а и / с. Параметр /n можно использовать с параметрами /i, /f, /x и /p.

Чтобы установить продукт из A:\Example.msi, установите продукт следующим образом:

msiexec /i A:\Example.msi

С помощью командной строки можно изменить только общедоступные свойства. Все имена свойств в командной строке интерпретируются как прописные, но значения сохраняются с учетом регистра. Если вы введете MyProperty в командной строке, программа установки переопределит значение MYPROPERTY, а не значение MyProperty в таблице свойств. Дополнительные сведения см. в разделе О свойствах.

Чтобы установить продукт со значением PROPERTY, равным VALUE, используйте следующий синтаксис в командной строке. Вы можете разместить свойство где угодно, кроме как между параметром и его аргументом.

msiexec /i A:\Example.msi PROPERTY=VALUE

msiexec /i PROPERTY=VALUE A:\Example.msi

Значения свойств, являющиеся литеральными строками, должны быть заключены в кавычки. Включите в строку пробелы между метками.

msiexec /i A:\Example.msi PROPERTY="Встроенный пробел"

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

msiexec /i A:\Example.msi PROPERTY=""

Для разделов текста, заключенных в буквальные кавычки, заключите раздел во вторую пару кавычек.

msiexec /i A:\Example.msi PROPERTY="Встроенные "кавычки"" пробел"

В следующем примере показана сложная командная строка.

msiexec /i testdb.msi INSTALLLEVEL=3 /l* msi.log COMPANYNAME="Acme "Виджеты"" и "Гизмо.""

В следующем примере показаны параметры рекламы. Обратите внимание, что переключатели не чувствительны к регистру.

msiexec /JM msisample.msi /T transform.mst /LIME logfile.txt

В следующем примере показано, как установить новый экземпляр рекламируемого продукта. Этот продукт создан для поддержки преобразования нескольких экземпляров.

msiexec /JM msisample.msi /T :instance1.mst;customization.mst /c /LIME logfile.txt

В следующем примере показано, как исправить экземпляр продукта, который установлен с помощью преобразования нескольких экземпляров.

msiexec /p msipatch.msp; msipatch2.msp /n /qb

При применении исправлений к определенному продукту параметры /i и /p нельзя указывать вместе в командной строке. В этом случае вы можете применить исправления к продукту следующим образом.

msiexec /i A:\Example.msi PATCH=msipatch.msp;msipatch2.msp /qb

Свойство PATCH нельзя задать в командной строке, если используется параметр /p. Если свойство PATCH установлено при использовании параметра /p, значение свойства PATCH игнорируется и перезаписывается.

Читайте также: