以下是我收到的例外情况。我正在使用netbeans IDE。没有显示错误,它引用了错误的名称。我不知道在哪里解决这个问题。它说“Helix / CodedInstance”,但包应该是“helix / CodedInstance”,因为这是我的包的名称。我正在组织我的应用程序移动包,我在netbeans中遇到了一个非常大的错误,它在我身上呕吐了500个错误窗口。我现在似乎无法回到原来的位置。幸运的是,我在Git中拥有一切,而且我最近一直致力于推动。我已经检查了远程存储库,但我仍然遇到很多错误,这很奇怪,但我正在努力推进。我已经删除了IDE中的所有错误,但是当我尝试运行测试文件时,我得到以下异常。
Exception in thread "main" java.lang.NoClassDefFoundError: helix/CodedInstance (wrong name: Helix/CodedInstance)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at helix.CodedClasses.Registers.TypeRegister.initialTypeLoad(TypeRegister.java:41)
at helix.HelixTesting.main(HelixTesting.java:31)
/Users/Mark/Library/Caches/NetBeans/8.1/executor-snippets/run.xml:53: Java returned: 1
BUILD FAILED (total time: 2 seconds)
我不确定您到底需要看到什么,所以我发布了底部引用的类TypeRegister
:
package helix.CodedClasses.Registers;
import Key.Key;
import helix.CodedClasses.GUI.ApplicationScope;
import helix.CodedClasses.Internal.HType;
import helix.CodedClasses.General.Values.*;
/**
*
* @author Mark
*/
public class TypeRegister extends AbstractRegister<HType>{
private static TypeRegister myRegister;
private TypeRegister(){
}
public static TypeRegister getReg(){
if(myRegister==null)
myRegister=new TypeRegister();
return myRegister;
}
@Override
public Key getKey(HType value) {
return value.getKey();
}
@Override
public String getName(HType value) {
return value.getName();
}
public static void initialTypeLoad(){
TypeRegister.getReg().register(HValue.classType());
TypeRegister.getReg().register(HAtomValue.classType());
TypeRegister.getReg().register(HNumeric.classType());
TypeRegister.getReg().register(HReal.classType());
TypeRegister.getReg().register(HNumber.classType());
TypeRegister.getReg().register(HBoolean.classType());
TypeRegister.getReg().register(HString.classType());
TypeRegister.getReg().register(HType.classType());
TypeRegister.getReg().register(ApplicationScope.classType());
ApplicationScope a = ApplicationScope.getInstance();
}
}
因为我昨晚提交的一切都很好,我认为它与我的IDE有关,但我在网上找不到如何解决netbeans中的类似问题。我使用的是8.1版
***** EDIT *****
我能够通过在Netbeans中重命名问题包(“helix”&gt;&gt;“HelixMain”)来解决这个问题。我把它换成了另一个名字。这导致了大量的错误。我假设Netbeans存在一些问题,因为重构应该已经调整了所有受影响的导入但没有。一旦我再次修复了所有的进口,它就完美地完成了。上帝很烦人。
希望这可以帮助其他人在将来使用netbeans这个奇怪的解决方法。我还是不知道发生了什么。