Моя JAVA_HOME
машина на моїй розробці - це Windows 7 Pro 64 Bit - вказує на 64-бітну Java, і це взагалі чудово. Однак я тільки що встановив програму - до речі, FlashDeveloper IDE - для якої цей параметр не впорядкований: натомість потрібен 32-розрядний Java, а цей JAVA_HOME
параметр запобігає збору 32-бітної Java.
Тож я хотів би зняти JAVA_HOME
функцію безпосередньо перед запуском Flash IDE.
Одним із способів досягти цього буде пакетний сценарій.
Але хіба немає кращого способу? Я шукав різні вкладки у вікні властивостей ярлика Windows для такої опції, але, здається, їх немає. (Я виявив, однак, прапорець для запуску програми через ярлик як Administrator
.) Будь-які пропозиції?
Оновлення: рішення, яке працювало для мене
:: type "C:\Program Files (x86)\FlashDevelop\FlashDevelop.bat"
@ECHO OFF
SETLOCAL
REM Prevent wrong 64-bit JVM from being picked up:
SET JAVA_HOME=
CALL "%~dpn0.exe"
Це відкриє командний рядок, який я можу просто закрити. Ви можете зробити ярлик, який містить піктограму виконуваного файлу, який ви викликаєте, у командному рядку, доручивши оболонці за допомогою властивостей ярлика піти шукати піктограму всередині фактичного виконуваного файлу.
Я не зміг знайти рішення, пов’язане START
з роботою, яке відкриває нове cmd.exe
вікно на моїй машині, коли було передано наступне (не знаю чому):
start "C:\Program Files (x86)\FlashDevelop\FlashDevelop.exe"
Треба сказати , що мій cmd.exe
буде налаштований - що може вплинути тут , і там.
Оновлення щодо start
проблеми: Як можна дізнатися, переходячи за посиланням у коментарях, start
команда використовує перші аргументи в лапках як заголовок вікон, що створюються… Отже, коли ви передасте шлях у лапки, він буде неправильно трактуватися як назва нового вікна. Обхід полягає у наданні явного заголовка як першого аргументу, який також може бути порожнім ( start "" "some path\with spaces"
).