java - 如何在 Linux 中从下载的源代码创建 Java 包

标签 java linux compilation package javac

我下载了一个外部库,common-codecs,并试图从下载的源代码创建一个包,以便我可以在 java 类文件中导入和使用它。我该怎么做呢?

我将下载的目录移动到与我的 java 类文件相同的目录中。

到目前为止我尝试了什么:

    package commons-codec-1.11-src;

我把它放在我的 java 类文件的头部

然后我尝试在 Linux 终端中使用 javac 编译文件

    javac -cp ~/Documents/javapractice/commons-codec-1.11-src ~/Documents/javapractice/File.java

我收到“需要接口(interface)、类或枚举错误”,编译器错误指向 java 类文件中的包语句。

代码:

    import java.util.*
    package commons-codec-1.11-src;

    public class File
    {
     ........

    }

只是为了澄清一下 commons-codec-1.11-src 是我下载的源代码,现在是与 File.java 相同目录中的一个目录 任何帮助将不胜感激!谢谢!

最佳答案

I downloaded an external library, common-codecs, and am trying to create a package from the downloaded source code so that i can import and use it in java class files. How would i go about doing this?

您不需要也不应该在您的应用程序中打包外部库的源代码。
在您自己的应用程序中提取依赖类是一个非常角落的用例,只有在您别无选择时才应该这样做。

您需要在编译时(javac 命令)和运行时(java 命令)在您的类路径中添加包含已编译类的 jar。

假设 jar 名为 commons-codec-1.11.jar,要编译您的 File.java 类,您应该执行:

javac -cp ~/Documents/javapractice/commons-codec-1.11.jar /~/Documents/javapractice/File.java

File.java 声明也不正确。

package 声明必须在 import 声明之前发生,并且 packageimport 值不正确

它应该是这样的:

package javapractice;
import java.util.*;

public class File {
 ........

}

关于从第三方库导入,需要导入你在File中使用的类。
您无法像您尝试的那样导入整个包。

我认为你应该试着理解javac/java bases并从 IDE 开始,让事情变得更简单。

关于java - 如何在 Linux 中从下载的源代码创建 Java 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48362652/

相关文章:

java - 使用 Java 实现 Shopify 的 GraphQL

java - 为什么从 App Engine 数据存储中获取 MakePersistentAll 中的 DeadlineExceededException?

java - 如何使用 Java 中的 PDFBOX 库查找 pdf 是纵向还是横向

java - 将值设置为原始类型字段

fork() 和 execl() 调用后无法识别 C++ 命令 (Linux)

python - OpenCV - Python 绑定(bind)中的 IPP、TBB 和 CUDA

c - Ubuntu 11.10 上的 OpenCV && S2i Harpia

linux - 备份 MySQL 数据库的 Bash 脚本

linux - sudo: apt-get: 命令未找到 Linux 服务器

java - 如何反转命令行编译错误输出?