我将我的项目从 Net bean 6.9.1 迁移到 Net Beans 7.3.1 并遇到了这个烦人的错误,随机文件 jsp 或 java 上有一个红色感叹号图标。
我打开它们并没有发现任何错误。
我在搜索谷歌后尝试了一些建议以禁用 html 和 jsp 验证,但没有运气,另一个建议是删除用户目录文件夹缓存下的缓存文件C:\Users\home\.netbeans\6.9\var\cache,也没有运气!
我将我的项目从 Net bean 6.9.1 迁移到 Net Beans 7.3.1 并遇到了这个烦人的错误,随机文件 jsp 或 java 上有一个红色感叹号图标。
我打开它们并没有发现任何错误。
我在搜索谷歌后尝试了一些建议以禁用 html 和 jsp 验证,但没有运气,另一个建议是删除用户目录文件夹缓存下的缓存文件C:\Users\home\.netbeans\6.9\var\cache,也没有运气!
您可以尝试执行以下操作...它对我有用
例如,重命名 jsp 或 java 的文件以使错误消失
test.java 重命名为 test_.java 然后重命名回 test.java
jsp 或 xml 也一样
参考
通过在其中一些项目中的一些项目上使用 netbenas,netbeans 文件用钦佩的符号和消息“解析文件错误”标记了一些文件。这是因为 netbenas 缓存有问题。解决方法是关闭netbenas,clean(删除缓存文件,启动netbenas会返回。下面是一些操作系统缓存的不同路径。WINDOWS
:C:\Users\AppData\Local\NetBeans\Cache\7.2\
MAC OS X: / 用户 // Library/Caches/NetBeans/7.2 /
UNIX: / home // .cache/netbeans/7.2
祝你好运
我在我的Java文件(IDE:Netbeans)中修复了“错误解析文件”,只需删除最底部“}”之前的空格并按Enter。基本上,只需对文件进行一些修改并再次保存即可。
在我的情况下,我有一个类似于以下的类,Netbeans (8.2) 在文件中没有显示错误,但是在文件图标中显示了解析文件的错误:
public class FileUploadUtil {
private static interface WriteToFile {
public void run(File file) throws IOException;
}
private static interface UseFile {
public void run(File file) throws IOException;
}
private static void createAndUseTempFile(InputStream is, UseFile use) throws IOException {
createAndUseTempFile((file) -> {
try (FileOutputStream fos = new FileOutputStream(file)) {
byte[] bytes = new byte[1024];
int read;
while ((read = is.read(bytes)) != -1) {
fos.write(bytes, 0, read);
}
fos.flush();
}
}, use, "tmp");
}
private static void createAndUseTempFile(Image image, UseFile use, String extension) throws IOException {
createAndUseTempFile((file) -> image.writeToFile(file), use);
}
private static void createAndUseTempFile(WriteToFile write, UseFile use, String extension) throws IOException {
File file = null;
try {
String key = System.currentTimeMillis() + "-" + SecurityUtil.generateUUID();
String suffix = (extension != null) ? ("." + extension) : null;
file = File.createTempFile(key, suffix);
write.run(file);
use.run(file);
} finally {
if (file != null) {
file.delete();
}
}
}
}
方法:
private static void createAndUseTempFile(Image image, UseFile use, String extension) throws IOException {
createAndUseTempFile((file) -> image.writeToFile(file), use);
}
应该:
private static void createAndUseTempFile(Image image, UseFile use, String extension) throws IOException {
createAndUseTempFile((file) -> image.writeToFile(file), use, extension);
}
但是Netbeans在文件中没有显示错误,所以我尝试重新加载项目,重命名文件等等。
然后我尝试用 gradle 编译并收到错误:
FileUploadUtil.java:95: error: incompatible types: InputStream is not a functional interface
然后我意识到它正在尝试调用createAndUseTempFile(InputStream is, UseFile use)而createAndUseTempFile(WriteToFile write, UseFile use, String extension)不是File!)。
我认为在这种情况下这是一个 Netbeans 错误,因为它应该在该行中显示错误。
有时我会在 JSP 文件中嵌入 JavaScript 时遇到这些问题,尤其是当 JavaScript 部分包含 JSTL EL 表达式时。在这些情况下,NetBeans 项目树视图为 JSP 文件显示一个红色感叹号(“解析文件错误”),但在打开文件时,它没有显示一行错误。
思路一:在 JavaScript 部分添加 HTML 注释,使 JSP/HTML 语法高亮引擎忽略这些部分:
<b>Very primitive example</b>
<script type="text/javascript">// <!--
var foo = ${myBean.bar}; // -->
</script>
想法 2:将尽可能多的 JavaScript 代码放入外部 JS 文件中。一般来说,避免在 JSP/HTML 文件中使用 JavaScript 代码是个好主意,因为这允许您使用额外的反 XSS 措施,例如X-XSS-Protection。
如果在 Netbeans 8.2 中有不必要的 lambda return 语句,可能会发生
我不确定这是否有帮助,但我使用的是 netBeans IDE 8.2,我的一个对话框 exampleDialog.java 上显示了一个红色标记,并且文件中没有错误。
我使用的是 Dimension wndSize;
wndSize = theKit.getScreenSize();
在设置我正在使用的窗口大小时wndSize.getWidth();,wndSize.getHeight();这些都是错误的,我将它们更改为wndSize.width;和wndSize.height;
红色标记消失了。
问候迈克尔。
不用担心 !这是因为在您对服务进行任何更改之后,或者jsp您需要保存您的文件。
所以首先保存你的文件然后一切顺利。这对我有用!