Проблемы с импортом файлов WAR в Eclipse? - PullRequest
2 голосов
/ 26 мая 2010

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

К счастью, у меня есть самый последний доступный файл WAR. Я использую Eclipse IDE и использую плагин Web Tools для всей работы J2EE, которую я выполняю с проектом Dynamic Web Application Project.

Когда я импортировал файл WAR и запустил его на локальном сервере, все работает нормально. Проблема, с которой я столкнулся, заключается в том, что в папке Java Resources / src, в которой все мои пакеты и файлы .java были теперь, есть только все одинаковые пакеты, но они пусты.

Я проверил, могу ли я найти файлы, и нашел файлы .class в папке «Imported files», которая недоступна в Eclipse Project Explorer. Я считаю, что мне нужно сделать какой-то тип сборки или что-то еще, чтобы мои файлы .java были доступны для меня, но, к сожалению, это одна из областей, где мне не хватает.

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

Кроме того, я хотел бы настроить эту среду, как это было раньше, где моя папка Java Resources: src содержит пакеты и файлы .java.

1 Ответ

3 голосов
/ 26 мая 2010

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

Краткий ответ - Нет. Невозможно восстановить исходные файлы из файлов байт-кода.

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

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...