代码之家  ›  专栏  ›  技术社区  ›  Johnny Bravo

如何发布具有非公共依赖关系的项目?

  •  2
  • Johnny Bravo  · 技术社区  · 8 年前

    我的项目(ojdbc8.jar)中有Oracle JDBC驱动程序

        <dependency>
            <groupId>com.oracle</groupId>
            <artifactId>ojdbc8</artifactId>
            <version>12.2.0.1</version>
        </dependency>
    

    它安装在我的本地maven存储库中:

    mvn install:install-file -Dfile=C:\Oracle\Client\jdbc\lib\ojdbc8.jar -DgroupId=com.oracle -DartifactId=ojdbc8 -Dversion=12.2.0.1 -Dpackaging=jar
    

    但现在我想分发我的项目,例如在GitHub

    如果有人下载我的项目,他就不会有ojdbc8。罐子

    所以问题是——如何发布带有一些本地或附加依赖项的项目,这些依赖项不在maven public repo中?

    2 回复  |  直到 8 年前
        1
  •  3
  •   Chris Gerken    8 年前

    我在使用来自公司(通常是微软和苹果)的JAR时遇到了这个问题,这些公司希望人们使用自己的语言栈而不是Java。我不是律师,但您可能希望指导那些想要编译您的代码的人从公开下载的jar开始,而不是将他们指向您构建的maven工件。

    如果没有公共存储库,那么您应该描述如何在用户的本地/公司存储库中构建依赖关系。提供下载jar所需的URL,并描述手动步骤(用于构建副本的步骤),以便感兴趣的各方可以遵循。正如您所提到的,maven简化了将JAR部署到存储库中的过程。

        2
  •  1
  •   J Fabian Meier    8 年前

    如果有包含ojdbc8的公共可用存储库。jar,您可以在pom中定义该存储库。

    如果没有,您需要了解是否允许在github存储库中发布该jar,或者是否可以找到下载链接。