Skip to content

Commit 0f9f612

Browse files
Update README.md
1 parent 078cf54 commit 0f9f612

1 file changed

Lines changed: 27 additions & 27 deletions

File tree

README.md

Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,55 +1,55 @@
1-
# About program
2-
Небольшая утилита позволяющая grab/dump/take/get/~steal~ байт код из работующей виртуальной машины Java и сохранять его на диск.
3-
Имеет графический интерфейс, несколько форматов сохранения, совместима с jdk 1.8+, и небольшой пред-загрузцик позволяющий выбирать java для запуска
1+
# About Program
2+
A small utility that allows you to grab/dump/take/get/~steal~ bytecode from a running Java Virtual Machine and save it to disk.
3+
It has a graphical interface, several output formats, compatible with JDK 1.8+, and includes a small preloader (bootstrap) to choose the Java runtime for launch.
4+
45
## Usage
56

67
> [!NOTE]
7-
> Из-за специфики приложения, для запуска нужна JDK (не JRE)
8+
> Due to the nature of the application, a **JDK** (not a JRE) is required to run it.
89
9-
Если вы запустите приграмму на JRE то откроется окно пред-загрузщика
10-
и вам будет предложено выбрать JDK для запуска
10+
If you launch the program on a JRE, bootstrap window will open and prompt you to select a JDK.
1111
> ![Bootstrap](https://github.com/Artur114Projects/JVMByteCodeGrabber/blob/master/images/bcg-bootstrap.png)
1212
13-
Введите туда путь до jdk, например: `C:\Program Files\Java\jdk1.8.0_231`
14-
Кнопка launch перезапустит приложение на указанной jdk
15-
Если запуск не удастся вы увидете окно пред-загрузщика сново
13+
Enter the path to the JDK, for example: `C:\Program Files\Java\jdk1.8.0_231`
14+
**Launch** button will restart application using the specified JDK.
15+
If the launch fails, you will see the bootstrap window again.
1616

1717
### Main frame
1818

19-
После запуска вы увидите список запущеных виртуальных машин. Выберете нужную JVM, подключитесь, добавте нужниые вам классы во вторую панель с помощью кнопки add to grab (самая правая кнопка левой панели)
19+
After successful launch, you will see a list of running Java virtual machines.
20+
Select the target JVM, connect to it, then add classes you need to right-side panel using **Add to grab** button (rightmost button on left panel).
2021

2122
![Screen 1](https://github.com/Artur114Projects/JVMByteCodeGrabber/blob/master/images/bcg-screen-1.png)
2223
![Screen 2](https://github.com/Artur114Projects/JVMByteCodeGrabber/blob/master/images/bcg-screen-2.png)
2324
![Screen 3](https://github.com/Artur114Projects/JVMByteCodeGrabber/blob/master/images/bcg-screen-3.png)
2425

2526
### Class grabbing
2627

27-
Чтобы сохранить выбранные классы нажмине кнопку grab (нижняя правая кнопка)
28-
Если путя из текстового поля с права не существует откроется File chooser, выбирете файл формата `.zip`, `.jar`, или папку
28+
To save the selected classes, press the **Grab** button (bottom right button).
29+
If the path written in text field on the right does not exist, a file selection window opens, select a `.zip`, `.jar` file, or folder.
2930

3031
> [!NOTE]
31-
> При выборе файла не поддерживаемого формата его формат будет автомотически заменен на `.jar`
32-
33-
После вам будет предложенно выбрать формат записи
32+
> If a file with an unsupported extension is selected, extension will be automatically changed to `.jar`.
3433
34+
After that, you will be asked to choose the output format.
3535
> ![Screen 4](https://github.com/Artur114Projects/JVMByteCodeGrabber/blob/master/images/bcg-screen-4.png)
3636
37-
Есть 3 формата записи
37+
There are three output formats:
3838

39-
- Full package
40-
- Package + Class name
41-
- Just class name
39+
- **Full package**
40+
- **Package + Class name**
41+
- **Just class name**
4242

4343
**Full package:**
44-
- Сохраняет каждый класс так что его package является путем в файловой системе, например: класс `java.util.List` будет в файловой системе `java\util\List.class`
44+
- Saves each class so that its package is used as the directory path. For example, class `java.util.List` becomes `java\util\List.class`.
4545

46-
**Package + Class name**
47-
- Сохраняет каждый класс так что его именем будет package + classname, например: класс `java.util.List` будет в файловой системе `java.util.List.class`
46+
**Package + Class name**
47+
- Saves each class using full package + classname as the file name. For example, class `java.util.List` becomes `java.util.List.class`.
4848

49-
**Just class name**
50-
- Сохраняет каждый класс так что его именем будет classname при условии что файлов с таким именем нет иначе package + classname, например: класс `java.util.List` будет в файловой системе `List.class`
49+
**Just class name**
50+
- Saves each class using only its name, provided no file with that name already exists, otherwise uses: package + class name. For example, class `java.util.List` becomes `List.class`.
5151

5252
## Credits
53-
Special thanks to JFormDesigner for his wonderful Look & Feel (FlatLaf)
54-
Developer: [@Artur114](https://github.com/Artur114Projects)
55-
Libraries: FlatLaf, Gson, Log4j
53+
Special thanks to [@JFormDesigner](https://github.com/JFormDesigner) for the wonderful Look & Feel ([FlatLaf](https://github.com/JFormDesigner/FlatLaf)).
54+
**Libraries:** FlatLaf, Gson, Log4j
55+
**Developer:** [@Artur114](https://github.com/Artur114Projects)

0 commit comments

Comments
 (0)