gpt4 book ai didi

java - 有没有办法在 Netbeans 中找到包名错误的类?

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:56:49 25 4
gpt4 key购买 nike

经过多年的 Java 开发,我震惊地发现编译器不检查包名是否真的与 Java 源文件的路径对应。

可以这样写:

package abcd; 
class Xyz {
}

编译,即使 Xyz.java 位于 efgh 文件夹中。我在 Netbeans 中编辑文件时收到警告,仅此而已。事实上,这导致了一个很难发现的错误:http://netbeans.org/bugzilla/show_bug.cgi?id=197320

有什么方法可以得到警告或错误吗?

最佳答案

使用 gnu-find,您可以搜索整个项目。 cd 到项目源码根目录,然后:

find PROJECT -type f -name "*.java" -exec ./pmatchd.sh {} ";"

您需要 pmatchd.sh - 脚本:

#!/bin/bash
#
dir=$(dirname $1)
d=${dir//\//.}
headline=$(head -n1 $1)
p=${headline#package }
if [[ $d";" != $p ]]
then
echo "mismatch: " + $d " " + $p + " " + $1
fi

如果你喜欢它,你会将它移动到路径中的某个位置,而不是 $PWD 中。

关于java - 有没有办法在 Netbeans 中找到包名错误的类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5551638/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com