java - NetBeans 中的编译问题

标签 java netbeans compiler-construction

我通过下载一些第三方的 Bouncy caSTLe jar 在 NetBeans 中创建了一个项目,它提供了一些 java 加密 API。我也下载了源代码,并按照包名将它们放在 src 文件夹下。但是,我项目中的一些 java 文件显示为红色且有错误。这是一个——

getparams() in org.bouncycastle.jce.provider.JCEECPrivateKey cannot implement 
               getParams() in rg.bouncycastle.jce.interfaces.ECKey
found : java.security.spec.ECParameterSpec
required: rg.bouncycastle.jce.ECParameterSpec

但奇怪的是,当我实际从 NetBeans 编译代码时,编译成功并创建了最终的 jar 文件。但是,编译说明如下:

Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

我的问题是:为什么即使某些文件似乎有错误,编译仍会进行?我可以忽略这些是良性的吗?

如何在 NetBeans 中使用 -Xlint 进行编译,因为我是通过单击项目和“清理并构建”选项进行编译的。

最佳答案

同意@Harry Joy 的观点,弃用不是错误。如果可以,您必须避免使用已弃用的方法或 API。因为我们不知道 Oracle 何时会在 JDK 的下一个版本中删除这个已弃用的方法。

如果您想在 NetBeans 中使用 -Xlint:deprecation 进行编译,您可以右键单击您的项目节点(在检查器窗口中),然后选择属性。

在“属性”窗口中,选择“构建”>“编译”。请搜索字段“其他编译器选项”,然后将 Xlint:deprecation 放入该字段。完成后,您可以按确定按钮。

顺便说一句,您可以在该字段中传递任何其他选项,例如“Xlint:unchecked”:)

关于java - NetBeans 中的编译问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6293410/

相关文章:

java - 奇怪的 "cannot find symbol"错误(从终端编译包)

c++ - reinterpret_cast 更改指针值的任何真实示例?

c++ - 这在内部是如何工作的 int const iVal = 5; (int&)iVal = 10;

java - JDialog 输入提示

java - 遍历多级 JTree 的所有节点

Java rxtxSerial 64 位与 32 位冲突

c# - .Net/C# 世界中是否有与 NetBeans RCP 类似的东西?

java - 如何将客户存储在列表中

java - 如何正确读取 awt 文本字段中的数字?

Javadoc:没有 HTML 标记的换行符?