如何让Eclipse识别Android项目中的加密算法
我正在Eclipse中开发一个使用加密的Android项目。代码包含以下行: Cipher en=Cipher.getInstance(“AES/ECB/NOPADDING”) Eclipse抱怨代码行有以下问题: “未处理的异常类型NoSuchAlgorithmException”和“未处理的异常类型NoSuchPaddingException” 我编写了一个简单的encrypt/decrypt java程序,在Eclipse外部有一个文本编辑器,其中包含这行代码。程序正确地从命令行编译和运行,没有抛出任何异常,并且正确地加密和解密 这告诉我,机器上正确安装了一个支持该算法和填充的提供程序,但由于某些原因,Eclipse看不到或找不到一些必要的文件。我尝试过浏览各种目录,并多次更改Eclipse的搜索路径,但都没有成功。有什么想法吗?如果您查看,您会注意到它抛出了您提到的异常。用try/catch块包围您的引用(如果您将鼠标悬停在突出显示的错误上,eclipse应提供此解决方案) 例如:如何让Eclipse识别Android项目中的加密算法,android,eclipse,encryption,Android,Eclipse,Encryption,我正在Eclipse中开发一个使用加密的Android项目。代码包含以下行: Cipher en=Cipher.getInstance(“AES/ECB/NOPADDING”) Eclipse抱怨代码行有以下问题: “未处理的异常类型NoSuchAlgorithmException”和“未处理的异常类型NoSuchPaddingException” 我编写了一个简单的encrypt/decrypt java程序,在Eclipse外部有一个文本编辑器,其中包含这行代码。程序正确地从命令行编译和运行
try {
Cipher en = Cipher.getInstance("AES/ECB/NOPADDING");
//use the cipher
//...
} catch (NoSuchAlgorithmException e) {
//handle exception
// ex: e.printStackTrace(); System.exit(1);
} catch (NoSuchPaddingException e) {
//handle exception
} finally {
//optional, use this block if necessary
}
Java要求您处理已检查的异常,因此您应该确保在代码中正确使用try/catch块
问题不在于处理异常,这就是代码首先抛出异常的原因。我需要获取一个密码实例来进行加密。因此,对于eclipse,您是否尝试获取密码,然后它抛出一个异常,还是根本不运行?它告诉我,在我在eclipse编辑器中添加该行后,它将在运行时抛出这些异常。我无法运行它,因为如果我取消注释该行,它将不会编译并出现错误。您必须像上面的代码示例一样,用try/catch块包围代码,因为代码可能引发异常。这并不是说它一定会,但如果它会,您需要有代码来检查它。在Java中,如果一个方法抛出一个异常,那么无论该异常是否在运行时发生,您都绝对需要有代码来处理它(除非它是RuntimeException的子类,例如NullPointerException)。请参阅我在答案底部添加的链接。好的!我会抓住例外!但是,除非我能阻止它首先抛出异常,否则整个程序都是无用的。谢谢你的帮助。还有人有什么想法吗?