netbeans java -重复类

l7mqbcuq  于 2022-11-10  发布在  Java
关注(0)|答案(6)|浏览(186)

对于以下代码为什么会出现重复类错误感到困惑?

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package database_console;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

/**
 *
 * @author davidsonr
 */
public class DBConnect {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
    }
}

Netbeans将DBConnect突出显示为红色,并显示重复类错误。

m2xkgtsf

m2xkgtsf1#

这是netbeans BUG 226360的已知问题
清除Netbeans缓存可能会有所帮助:
转到Help-〉About,您将看到

**快取目录:**路径\到\目录

关闭NetBeans,转到指定目录并删除所有内容。

xv8emn3q

xv8emn3q2#

如果包名与文件夹名不匹配,或者包名被省略,也会发生这种情况。请检查源代码中的package语句。

rkue9o1l

rkue9o1l3#

这可能是因为同一个包中有两个同名的类

r7knjye2

r7knjye24#

如果您在同一个包的单独文件中引用erroring类,并且erroring类与您引用erroring类的文件的包路径不匹配,则也会发生这种情况。
例如,文件1中有一些.path.package不正确
出错的类{ }
文件2一些.正确.路径.包
类新类{
如果您有一个错误,请使用以下命令。
}
这两个文件中的包路径必须相互匹配,并与文件系统目录匹配。

hsvhsicv

hsvhsicv5#

如果文件名与类名不匹配,NetBeans 8.0.1会将其报告为重复类.

iyfamqjs

iyfamqjs6#

一个新的答案...在这个例子中,重复类错误是令人困惑的。下一个错误的一部分也是如此,但它也指出了真实的的问题和修复。
从我的日志文件:

Error 1: a\g\GoodClass error:duplicate class: a.g.GoodClass //Not the problem
Error 2: a\b\BadClass error: cannot access GoodClass        //The problem
         bad source file: a\g\GoodClass                     //No, it's fine
         file does not contain class x.y.GoodClass          //How to fix it
         Please remove or make sure it appears in the correct subdirectory of the sourcepath.

Java报告第一行 Error 2,因为BadClass使用通配符导入,import x.*;import x.y.*;。Java编译器首先找到x.y.GoodClass,因此无法确定您真正需要的是哪个:例如,优良等级或x.y.优良等级。
修复方法:删除通配符导入,并从库x. y中添加您需要的特定导入。

相关问题