Томас, меня не убеждает ваш анализ проблемы, с которой вы столкнулись, потому что вы не показываете файл eclipse.ini, который предположительно вызвал его.
У меня тоже есть Windows 7, но у меня нет проблем с "#" в eclipse.ini. Если вы посмотрите на источник класса EquinoxFwConfigFileParser, вы обнаружите, что он читает файл * .ini с помощью метода Java Properties.load (FileInputStream). Так как "#" работает как сигнал комментария в файле свойств Java, он работает так же, как и в eclipse.ini.
Но давайте посмотрим только на явления. Файлы * .ini встречаются во многих местах установки eclipse, например файл config.ini в подкаталоге конфигурации каталога установки. Это начинается так:
#This configuration file was written by: org.eclipse.equinox.internal.frameworkadmin.equinox.EquinoxFwConfigFileParser
#Fri Feb 10 15:57:47 CET 2017
org.eclipse.update.reconcile=false
...
Кажется маловероятным, что "#" будет работать там как комментарий, но не в eclipse.ini, который имеет такую же структуру. (Теперь мы знаем, что это просто структура файла свойств Java.)
Ваше сообщение об ошибке
... in scheme name at index 0: %23C:/Program%20Files/Java/jdk1.8.0_92/bin/javaw.exe
может происходить из некоторого ini с двумя строками, такими как следующие, которые могут появиться в eclipse.ini:
-vm
#C:/Program Files/Java/jdk1.8.0_92/bin/javaw.exe
"#" является допустимым символом в именах файлов / каталогов Windows. Ожидается, что строка после «-vm» будет именем файла или, скорее, URI. Если указанный файл javaw.exe не найден, модуль запуска eclipse примет его в переменной среды PATH.
Это например
-vm
#Hello
#K:/studevaux/dev_javaver64/jdk8/bin/javaw.exe
-vmargs
отлично работал, чтобы начать затмение - но только, как я понял, потому что у меня есть javaw.exe в моей системной переменной PATH. Когда я устранил это, я получил сообщение об ошибке:
Сообщение об ошибке: не найден java.exe для запуска eclipse