У меня есть следующий код:
package deerangle;
public class Renamer implements org.jetbrains.java.decompiler.main.extern.IIdentifierRenamer {
public static void main(String[] args) {
System.out.println("HEY");
}
public long counter = 0;
public boolean toBeRenamed(Type elementType, String className, String element, String descriptor) {
return !(elementType == Type.ELEMENT_CLASS && className.length() < 4);
}
public String getNextClassName(String fullName, String shortName) {
return "Class" + ++counter;
}
public String getNextFieldName(String className, String field, String descriptor) {
return "field" + className + "C" + ++counter;
}
public String getNextMethodName(String className, String method, String descriptor) {
return "method" + className + "C" + ++counter;
}
}
Этот файл, Renamer.java
, находится внутри папки deerangle
.
Сначала я запускаю javac deerangle/Renamer.java
.
Затем я запускаю jar cvf Renamer.jar deerangle/Renamer.class
.
Это создает файл JAR, содержащий мой файл класса.
Когда я сейчас запускаю java -cp Renamer.jar deerangle.Renamer
, он говорит: Error: Could not find or load main class deerangle.Renamer
Я не думаю, что это действительно имеет значение, но вот класс, который я реализую в своем коде:
// Copyright 2000-2017 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package org.jetbrains.java.decompiler.main.extern;
public interface IIdentifierRenamer {
enum Type {ELEMENT_CLASS, ELEMENT_FIELD, ELEMENT_METHOD}
boolean toBeRenamed(Type elementType, String className, String element, String descriptor);
String getNextClassName(String fullName, String shortName);
String getNextFieldName(String className, String field, String descriptor);
String getNextMethodName(String className, String method, String descriptor);
}
Почемуя получаю ошибку?Что я делаю не так?