Извлечь исходный код из файла .jar

Есть ли способ извлечь исходный код из исполняемого файла .jar (Java ME)?


147

Использовать графический интерфейс JD. Откройте приложение, перетащите в него ваш JAR-файл.

Улучшите этот ответ
отредактировано 20 ноября ’13 в 18:33
Raekye
4,73588 золотых знаков4545 серебряных знаков7272 бронзовых знака
ответил 24 февраля 2011 в 16:08
  • 6
    есть ли способ получить исходный код из .jar без графического интерфейса JD? — Zulqurnain Jutt, 07 окт., В 17:24
  • @ZulqurnainJutt используйте, как указано в ответе @ elachance jar xf filename.jar — Арвинд Шридхаран, 14 сен 2018, 16:45
добавить комментарий |

Использовать графический интерфейс JD. Откройте приложение, перетащите в него файл JAR.


48

Вы можете извлечь файл jar с помощью команды:

  jar xf filename.jar  

Ссылки: Документация Oracle JAR

Улучшите этот ответ
отредактировал 11 февраля ’13 в 22:04
Jeromy French
11.2k1313 gold badges6767 silver 119119 бронзовых знаков
ответил 24 сен ’12 в 19: 18
  • 21
    Это эквивалентно переименованию filename.jar в filename.jar.zip и затем просто разархивируйте его. — Матиас Байненс 05 марта ’14, в 9:16
  • 28
    При этом не извлекается исходный код. Он извлекает скомпилированный исходный код. — 0xcaff 22 июля ’15 в 20:35
  • 5
    @caffinatedmonkey он извлекает исходный код, когда jar содержит файлы java, например jars с именами, обычно заканчивающимися на «-sources». Он действительно извлекает файлы .class только тогда, когда jar не содержит исходных файлов java.. — edwardmp 2 мая ’16 в 9:04
добавить комментарий |

Вы можете извлечь файл jar с помощью команды:

  jar xf filename.  jar  

Ссылки: документация Oracle JAR


39

Я считаю, что это можно сделать очень легко. Вы всегда можете извлечь исходные файлы (файлы Java) jar-файла в zip-архив.

Шаги по получению исходных файлов jar-файла в виде zip-архива:

  1. Загрузите JAD с http://techieme.in/resources-needed/и сохраните его в любом
    месте в вашей системе.
  2. Перетащите jar-файл, для которого вы хотите использовать источники в JAD. 3 JAD UI откроется со всей структурой пакета в древовидном формате.
  3. Щелкните меню File и выберите save jar sources. .
  4. Он сохранит источники в виде zip-архива с тем же именем, что и jar.

Надеюсь, это поможет.

Ссылка мертва по какой-то причине, поэтому добавляем ссылку, откуда вы можете скачать JDGUI

Улучшите этот ответ
отредактировано 26 июля ’16 в 13:43
V-rund Puro-hit
5,17088 гол ds2626 серебряных знаков4747 бронзовых знаков
ответил 19 мая ’13 в 11: 202013-05-19 11:20
  • 1
    @Nitesh … Я опубликую ссылку, размещенную на мой веб-сайт … пожалуйста, скачайте его оттуда — дхарам, 28 августа 2013 г., 11:28
  • 4
    Версия по ссылке на techieme прекрасно работает, спасибо! — DerStrom8, 28 июля 2015 г., 15:59
  • После сохранения всех источников, когда я открываю файлы Java, все строки отображаются в виде строк с комментариями. Есть ли какие-нибудь настройки, чтобы это исправить? — Ананд 23 июл. ’20 в 10:39
добавить комментарий |

Я считаю, что это можно сделать очень легко. Вы всегда можете извлечь исходные файлы (файлы Java) jar-файла в zip-архив.

Шаги по получению исходных файлов jar-файла в виде zip-архива:

  1. Загрузите JAD с http://techieme.in/resources-needed/и сохраните его в любом
    месте в вашей системе.
  2. Перетащите jar-файл, для которого вы хотите использовать источники, в JAD. 3 JAD UI откроется со всей структурой пакета в древовидном формате.
  3. Нажмите на меню File и выберите save jar sources. .
  4. Он сохранит исходные файлы в виде zip-архива с тем же именем, что и jar.

Надеюсь, это поможет.

Ссылка мертва по какой-то причине, поэтому добавляем ссылку, откуда вы можете скачать JDGUI


31

Ваш JAR может содержать исходный код и javadoc, и в этом случае вы можете просто использовать jar xf my.jar чтобы извлечь их.

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

Использовать графический интерфейс JD. Откройте приложение, перетащите в него ваш JAR-файл.

Улучшите этот ответ
отредактировано 10 августа 2015 г. в 11:20
Kranthi Sama
47811 золотых знаков88 серебряных знаков2626 бронзовых знаков
ответил 24 февраля 2011 г. в 16:17
  • 21
    Обратите внимание, что файлы .jar на самом деле являются файлами .zip и могут быть открыты с помощью любого инструмента ZIP. — Крис Нава, 24 фев., 2011 в 17:50
добавить комментарий |

Ваш JAR может содержать исходный код и javadoc, и в этом случае вы можете просто использовать jar xf my.jar , чтобы извлечь их.

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

Использовать графический интерфейс JD. Откройте приложение, перетащите в него файл JAR.


12

Я знаю, что это старый вопрос. Тем не менее, думал, что это кому-то поможет

1) Перейдите в папку с файлом jar.

2 ) измените его расширение на .zip.

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

Примечание: Я тестировал это на MAC, он работает. Надеюсь, он будет работать и с окнами.

Улучшите этот ответ
ответил 12 февраля ’14 в 12:26
  • 2
    @JCodex, я занимаюсь исследовательским проектом по инструменту анализа настроений «поиск мнений», и его jar действительно содержит как java файлы, так и файлы классов. так что ваш комментарий не на 100% правдив. Я знаю, что обычно он содержит только .class, но, по крайней мере, не в этом случае — wired00, 04 марта 2015 г., 10:36
  • 2
    Ваше решение будет извлекать только файлы .class, а не исходный код. — Карлос Са, 01 сен 2017, в 9:46
  • Кажется, JD-GUI — это многоплатформенный инструмент, который фактически декомпилирует код и показывает исходный код для классов во всех пакетах. Я попробовал и смог получить исходный код за секунду в MacOS. У меня установлена ​​Java 8. Вы можете получить его на jd.benow.ca Не уверен, что он работает для больших проектов. — Карлос Са 01 сен 2017, в 10:03
  • 1
    нужен исходный код, который не предоставляется описанным вами способом — chiragchavda.ks 28 июня ’19 в 10:53
добавить комментарий |

Я знаю, что это старый вопрос. Тем не менее думал, что это кому-то поможет

1) Перейдите в свой jar-файл папка.

2) измените ее расширение на .zip.

3) Вы можете легко извлечь ее, просто дважды щелкнув по ней.

Примечание: Я тестировал это на MAC, он работает. Надеюсь, он будет работать и с окнами.


4

Выполните следующие действия в вашем Linux-окне, где работает java (если вам нравится терминальный способ работы)

  cd ~ mkdir decompiled_code && cd decompiled_codewget https://bitbucket.org /mstrobel/procyon/downloads/procyon-decompiler-0.5.36.jarjava -jar procyon-decompiler-0.5.36.jar/Путь/к/вашему/jar -o.  

ПРИМЕЧАНИЕ : как прокомментировал @Richard, «это может быть незаконным в зависимости от того, являетесь ли вы владельцем авторских прав на банку, страны, в которой вы живете, и вашей цели».

Улучшить этот ответ
отредактировал 18 марта ’20 в 15:07
ответил 5 ноя ’19 в 13:04
  • Для конкретного файла класса вы можете сделать java -jar procyon-decompiler-0.5.36.jar/Path/to/your/jar package/of/the/java/ class.class> className.java — nitin angadi 6 янв в 6:40
добавить комментарий |

Сделайте следующее в вашем Linux-окне, где работает java (если вам нравится терминальный способ выполнения действий)

  cd ~ mkdir decompiled_code && cd decompiled_codewget https://bitbucket.org/mstrobel/procyon/downloads/procyon-decompiler-0.5.36.jarjava -jar procyon-decompiler-0.5.36.jar/Path /в/ваш/jar -o.  

ПРИМЕЧАНИЕ : как прокомментировал @Richard, «это может быть незаконным в зависимости от того, владеете ли вы авторскими правами на банку, страны, в которой вы живете, и ваша цель для этого. «


0

AndroChef Java Decompiler создает очень хороший код, который вы можете использовать непосредственно в своих проектах …

Улучшите этот ответ
ответил 3 мая ’14 в 2:59
добавить комментарий |

AndroChef Java Decompiler создает очень хороший код, который вы можете использовать непосредственно в своих проектах …


0

Шаги по получению исходных файлов jar-файла в виде zip-архива:

  1. Загрузите JD-GUI с http://java-decompiler.github.io/и сохраните его в любом месте вашей системы.

  2. Перетащите jar-файл или откройте файл .jar , для которого вы хотите, чтобы исходники находились на JD.

  3. Декомпилятор Java откроется со всей структурой пакета в виде дерева.

  4. Щелкните меню «Файл» и выберите сохранить источники jar. Он сохранит источники в виде zip-архива с тем же именем, что и jar.

Пример: —

Мы можем использовать Eclipse IDE для разработчиков Java EE а также для обновления/извлечения кода, если требуется.

В eclipse выберите Import Jar , а затем выберите jar, который вам нужен. Следуйте инструкциям на изображении ниже

Улучшите этот ответ
ответил 3 ноября ’20 в 18:00
добавить комментарий |

Шаги по получению исходных файлов jar-файла в виде zip-архива:

  1. Загрузите JD-GUI с http://java-decompiler.github.io/и сохраните его в любом месте вашей системы.

  2. Перетащите jar или откройте файл .jar , для которого вы хотите, чтобы исходники были на JD.

  3. Java Decompiler откроется со всей структурой пакета в древовидной структуре.

  4. Щелкните меню «Файл» и выберите «Сохранить исходные файлы jar».. Он сохранит источники в виде zip-архива с тем же именем, что и jar.

Пример: —

Мы можем использовать Eclipse IDE для разработчиков Java EE а также для обновления/извлечения кода, если требуется.

В eclipse выберите Import Jar , а затем выберите jar, который вам нужен. Следуйте инструкциям на изображении ниже


-2

Вышеупомянутые инструменты извлекают банку. Также есть некоторые другие инструменты и команды для извлечения jar-файла. Но, AFAIK, вы не можете получить java-код в случае, если код был запутан.

Улучшите этот ответ
ответил 4 марта ’14 в 9:49
  • 8
    Величайший ответ — fnc12 8 июля 2016, 18:19
добавить комментарий |

Вышеупомянутые инструменты извлекают банку. Также есть некоторые другие инструменты и команды для извлечения jar-файла. Но, AFAIK, вы не можете получить java-код в случае, если код был запутан.


-6

предположим, что ваш файл JAR находится в C: Documents and Settings mmeher Desktop jar, а имя файла JAR — xx.jar, затем введите две следующие команды в командной строке:

1> cd C: Documents and Settings mmeher Desktop jar

2> jar xf xx.jar

Улучшите этот ответ
ответил 31 янв., В 11:18
добавить комментарий |

предположим, что ваш файл JAR находится в C: Documents and Settings mmeher Desktop jar, а имя файла JAR — xx.jar, затем введите две следующие команды в командной строке:

1> cd C: Documents and Settings mmeher Desktop jar

2> jar xf xx.jar


-8

— Преобразовать файл .jar в .zip (в windows просто измените расширение) -разархивируйте папку .zip-вы получите полную. java файлы

Улучшить этот ответ
ответ дан 12 мая ’17 в 21: 37
  • 3
    Небольшое примечание об этом методе … Это правда, что файлы jar представляют собой причудливые zip-файлы. Однако разархивирование jar-файла, скорее всего, приведет к появлению файлов * .class, то есть «скомпилированных» java-файлов. Можно «декомпилировать» файлы классов в обычные java-файлы. Эта функция включена во многие IDE — Даниэль Эрнандес, 21 мая 2018 г., 13:38
  • это просто разблокирует файлы классов — Харшил, 21 фев. ’19 в 11:06
добавить комментарий |

— Преобразовать файл .jar в .zip (в Windows просто изменить расширение) — Разархивировать папку .zip — Вы получите все. java-файлы



Как просмотреть исходный код внутри JAR-файла?

Я загрузил код для LAN-мессенджера из sourceforge. Это исполняемый файл JAR.
Вы дважды щелкаете по нему, и ваш мессенджер запускается.

Я хочу изучить исходный код. Как мне это сделать?


Sourceforge имеет ссылки на источник.


18

Извлечь исходный код из файла .jar

(1) Использовать графический интерфейс JD (http://jd.benow .ca/). Откройте приложение, перетащите в него свой JAR-файл.

(2) Вы можете извлечь файл jar с помощью команды:

  jar xf filename.jar  

Ссылки: документация Oracle JAR

Улучшите этот ответ
отредактировано 23 мая ’17 в 10:30
Сообщество ♦
111 серебряный значок
ответил 07 февраля 2014, 06:22
добавить комментарий |

Извлечь исходный код из файла .jar

(1) Использовать графический интерфейс JD (http://jd .benow.ca/). Откройте приложение, перетащите в него свой JAR-файл.

(2) Вы можете извлечь файл jar с помощью команды:

  jar xf filename.jar  

Ссылки: документация Oracle JAR


2

Открытие файлов JAR работает с любым программным обеспечением, поддерживающим формат файла .ZIP, например WinRAR..

Но если вы хотите получить доступ к исходному коду, это становится немного сложнее, поскольку в файле JAR код Java уже «предварительно скомпилирован» в байтовый код Java. К счастью, существует (грубый ) способ декомпиляции байтового кода обратно в (обычно) читаемый исходный код Java.

Есть много программ, которые делают это, мой личный фаворит — JAD (http://www.varaneckas.com/jad /).

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

Улучшите этот ответ
ответил 30 июня ’12 в 16:30
добавить комментарий |

Открытие файлов JAR работает с любым программным обеспечением, которое поддерживает формат файла .ZIP, например WinRAR.

Но если вы хотите получить доступ к исходному коду, это становится немного сложнее, поскольку в файле JAR код Java уже «предварительно скомпилирован» в байтовый код Java. К счастью, существует (грубый) способ декомпиляции байтового кода обратно в (обычно ) читаемый исходный код Java.

Есть много программ, которые делают это, мой личный фаворит — JAD (http://www.varaneckas.com/jad/).

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


1

У вас есть eclipse на вашем компьютере? вы можете добавить файл jar в проект, тогда вы увидите исходный код

Улучшите этот ответ
ответил 30 июня ’12 в 3: 27
  • Это на самом деле неверно, вы можете увидеть класс код. — Tastybrownies 25 окт., 18:49
добавить комментарий |

у вас есть eclipse на вашем компьютере? вы можете добавить файл jar в проект, тогда вы увидите исходный код


0

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

Улучшите этот ответ
ответил 25 нояб., В 2:37
добавить комментарий |

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


-1

Доступны только два варианта 1. Используйте инструмент декомпиляции, такой как Cavaj или JAD. В источник может быть сложно внести изменения. Если это для понимания функциональности, это может помочь. 2. SourceForge также должна иметь ссылку на исходные файлы. Думаю, стоит попытать счастья и еще раз проверить это на SourceForge.

Улучшите этот ответ
ответил 30 июня ’12 в 5:01
добавить комментарий |

Доступны только два варианта 1. Используйте инструмент декомпиляции, такой как Cavaj или JAD. В исходный код может быть сложно внести изменения. Если это для понимания функциональности, это может помочь. 2. SourceForge также должна иметь ссылку на исходные файлы. Думаю, стоит попытать удачу еще раз проверить это на SourceForge.

Оцените статью
logicle.ru
Добавить комментарий