【发布时间】:2016-06-27 00:39:40
【问题描述】:
我最近收到了这个错误:
chan@TakShing:~/Desktop/Java$ javac test.java
test.java:16: error: cannot find symbol
String encoded = Base64.encodeBase64String( user_pass.getBytes() );
^
symbol: variable Base64
location: class test
1 error
所以我浏览了网站,发现您必须下载我从以下位置获得的源文件:http://commons.apache.org/proper/commons-codec/download_codec.cgi
我在“源”下下载了“commons-codec-1.10-src.tar.gz”,但我完全不知道如何继续完成连接所有内容的最后一步。我目前也在使用 Ubuntu。
我承认我看到一些帖子说要设置类路径,但我不明白,因为我找到的所有答案都是“设置类路径”,仅此而已。问题是我不知道该怎么做,而且在做这些技术工作时,我完全是个业余爱好者,尤其是在 Ubuntu 上。有人可以帮帮我吗?
【问题讨论】:
-
获取commons-codec的编译版本,而不是下载src。然后提取该存档,在里面你应该找到一个需要添加到类路径的 jar 文件。
-
我今天只安装了所有必要的东西让 java 在 ubuntu 上运行,所以如果我必须手动制作,我不确定类路径是否存在?
-
您有多种选择; maven 是一个复杂的构建工具,可以为您完成。至少,您应该阅读 Java 教程的 PATH and CLASSPATH 部分。
-
请注意
user_pass.getBytes()是危险的。它将使用底层平台的默认字符集将字符转换为字节,这意味着您将在不同的机器上获得相同值的不同字节。强烈建议改用user_pass.getBytes(StandardCharsets.UTF_8)。
标签: java import base64 classpath