Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我可以构建一个依赖于另一个库而不调用该库的JAR吗?_Java_Jar - Fatal编程技术网

Java 我可以构建一个依赖于另一个库而不调用该库的JAR吗?

Java 我可以构建一个依赖于另一个库而不调用该库的JAR吗?,java,jar,Java,Jar,我想创建一个依赖于JAR的Java库,但我希望JAR由使用我的库/JAR的项目加载,而不是作为库中的依赖项提供 我之所以需要这样做,是因为所讨论的JAR是用于Android的Adobe分析JAR。这些JAR特定于所讨论的项目,但是每个JAR中的方法、包和类的名称始终相同 在C/C++世界中,您可以有单独的头文件,一个用于内部构建,一个用于库用户的公共头文件。有没有一种方法可以在Java中实现这一点?我通常使用Gradle,但非常欢迎使用其他工具的解决方案 您可以将所有依赖项包含在一个jar中,并

我想创建一个依赖于JAR的Java库,但我希望JAR由使用我的库/JAR的项目加载,而不是作为库中的依赖项提供

我之所以需要这样做,是因为所讨论的JAR是用于Android的Adobe分析JAR。这些JAR特定于所讨论的项目,但是每个JAR中的方法、包和类的名称始终相同


在C/C++世界中,您可以有单独的头文件,一个用于内部构建,一个用于库用户的公共头文件。有没有一种方法可以在Java中实现这一点?我通常使用Gradle,但非常欢迎使用其他工具的解决方案

您可以将所有依赖项包含在一个jar中,并将uber jar包含在第三方项目中。

您可以将所有依赖项包含在一个jar中,并将uber jar包含在第三方项目中。

使用maven创建包含所有依赖项的jar(所有类都将包含在一个大jar中)-

使用maven创建具有所有依赖项的JAR(所有类都将包含在一个大JAR中)

我认为这并不能回答我的问题。我不需要在我的罐子中包含有问题的罐子,因为如果我这样做,罐子将是错误的。我需要库的用户提供这个JAR的一个特定于他们项目的正确版本。然后告诉用户将他们的JAR复制到您的应用程序类路径文件夹中,并将其包含在您的启动脚本中-我认为这并不能回答我的问题。我不需要在我的罐子中包含有问题的罐子,因为如果我这样做,罐子将是错误的。我需要库的用户提供这个JAR的一个特定于他们项目的正确版本。然后告诉用户将他们的JAR复制到您的应用程序类路径文件夹中,并将其包含在您的启动脚本中-与另一个答案的问题相同。我不需要在我的罐子中包含有问题的罐子,因为如果我这样做,罐子将是错误的。我需要库的用户提供这个JAR的一个特定于他们项目的正确版本。你可以这样做。目标JVM的唯一要求是在运行时类路径中包含所有dependencied。如果您将依赖范围定义为提供的
,Maven会为您做这样的事情。这会导致项目进行编译,但没有在运行时应该“提供”的依赖项。如果在构建中使用Maven是一个可行的观点,那么就去做吧。您所需的功能与其他答案的问题完全相同。我不需要在我的罐子中包含有问题的罐子,因为如果我这样做,罐子将是错误的。我需要库的用户提供这个JAR的一个特定于他们项目的正确版本。你可以这样做。目标JVM的唯一要求是在运行时类路径中包含所有dependencied。如果您将依赖范围定义为提供的
,Maven会为您做这样的事情。这会导致项目进行编译,但没有在运行时应该“提供”的依赖项。如果在构建中使用Maven是一个可行的观点,那么就去做吧。您需要的功能是现成的