Помогите Переписать плагин...

LR project

Активный участник
Пользователь
Баллы
61
В одном плагине я нашел те строки (отвечающие за сообщения), которые мне не нужны.
В конфиге нельзя менять эти сообщения.
Почему мне они не нужны:
Игроку недоступна команда этого плагина, он ее пишет, ему выдает две строки:
У вас нет прав...
Требуется: tralala.permissions
А я хочу удалить эту вторую строку, но ее можно убрать только путем изменения class. Если тупо стереть ее через InClassTranslator, то всеравно пустая строка будет выводится в чат, поэтому, немного разобравшись в java я решил декомпилировать class плагина и убрать эту строку, но, чтобы обратно закомпилировать, нужна спец. программа, такая как eclipse. Ну, в общем, скачал, установил. Оказывается, нужно собирать какой-то проект (вытаскивая все из jar плагина) и совать это все в спец. папку проектов, чтобы скопилировать какой-то один class файл.
Может я уже написал решение своей проблемы, но можете в точности объяснить, правильно ли я делаю? Или необязательно собирать всю директорию плагина (проект eclipse)? Я сделал так, но у меня ничего не компилируется, выводит ошибку, что какой-то appletviewer не найден или неисправен, или что-то типа этого.
 
Можно компилировать не оболочкой, а напрямую javac, там только один файл компильнёшь и готово.
 
Без нужных сигнатур не выйдет.
не совсем понял о чем вы, но если класс простой, обычно достаточно
javac -cp craftbukkit.jar:plugin.jar ClassToCompile.java
если в нем используется всякая левая фигня, соответственно нужно эту фигню найти и указать ее джарники тоже.
наличие фигни легко можно понять по import-ам в начале класса.
 
Я знаю, что можно компилировать через javac, но, в какой бы я кодировке это не делал, выдает одни ошибки.



Какие сигнатуры нужны?
Это зависимости.

не совсем понял о чем вы, но если класс простой, обычно достаточно
javac -cp craftbukkit.jar:plugin.jar ClassToCompile.java
если в нем используется всякая левая фигня, соответственно нужно эту фигню найти и указать ее джарники тоже.
наличие фигни легко можно понять по import-ам в начале класса.
-cp как раз и указывает расположение зависимостей и javac берёт оттуда сигнатуры.
 
-cp как раз и указывает расположение зависимостей и javac берёт оттуда сигнатуры.
ну как бы кэп, я просто не понял, почему вы сразу не сказали как это сделать. "без либ?" "без сигнатур?". откуда такие вопросы? сказано же только без eclipse. хотя и с eclipse можно, просто все нужные либы нужно подтянуть.
 
ну как бы кэп, я просто не понял, почему вы сразу не сказали как это сделать. "без либ?" "без сигнатур?". откуда такие вопросы? сказано же только без eclipse. хотя и с eclipse можно, просто все нужные либы нужно подтянуть.
Какой настырный! Прочитай пару книг про java, там тебе черным по белому написано будет, что такое сигнатуры и для чего они нужны.
 
В IDE проще же. В сорцы нужный класс, подключаем в качестве библиотеки ядро и сам плагин.
Экспортируем содержимое библиотеки плагина + сорцы.
Или вы из тех самобытных философов (мазахистов), которые делают всё сами, постигают все нововведения вручную, пишут на ассемлере и т.д.?
 
В IDE проще же. В сорцы нужный класс, подключаем в качестве библиотеки ядро и сам плагин.
Экспортируем содержимое библиотеки плагина + сорцы.
Или вы из тех самобытных философов (мазахистов), которые делают всё сами, постигают все нововведения вручную, пишут на ассемлере и т.д.?
Проще настроить IDE, чем выполнить одну единственную консольную команду?
Если задача не заключается в значительной модификации плагина (в чем несомненно IDE с автодополнением методов/полей лучше), то декомпиляцию/рекомпиляцию можно сделать в две консольных команды (или даже в один клик, если написать простенький консольный скрипт).
Вы сможете сделать это через IDE за аналогичное время?

Более того, когда ты пытаешься изменить что-то в неплохо обфусцированном моде, то намного проще внести нужные изменения через редактор байткода (ну и свой мод-помощник, чтобы не ломать голову над майновской обфускацией, если например нужно телепортировать энтети по координатам из метода редактируемого мода).
 
Более того, когда ты пытаешься изменить что-то в неплохо обфусцированном моде, то намного проще
...написать свой мод, потому что трахаться с этом дерьмом порой желания не возникает.
 
Напишите точную инструкцию, как мне рекомпилировать класс файл: пример команды и ее образец, которую нужно вводить в консоль, а дальше я уже сам разберусь. В инете искал, там ничего подробного о компилировании .java в .class через javac не сказано, пишут только о eclipse и netbeans, но мне нужно именно через консоль.

Допустим, у меня сервер лежит в папке C:\Users\Username\Desktop\srv1.9
Хочу рекомпилировать .java в плагине Private (Это не тот плагин, в котором мне нужно удалить вторую строку). Путь: C:\Users\Username\Desktop\srv1.9\plugins\Private.jar\com\j3kennard\Private.java
Что я должен прописывать в cmd строке для успешной компиляции java в class (и чтобы class появился прямо там, где лежит его .java)?
 
Назад
Верх