Scala 本地发布,但发布到项目本身中

Scala 本地发布,但发布到项目本身中,scala,dependencies,sbt,Scala,Dependencies,Sbt,我在一个scala项目中有一个依赖项,我想将它包含在其中,这样它就可以在项目中使用,而不必为每个使用该项目的人使用Internet。换句话说,我想做一种“本地发布”,但有点不同:本地发布只在我的机器上本地发布,每个使用项目的人也必须在他们的机器上本地发布,而我想在这个scala项目中直接发布这个依赖项 有可能吗?怎么可能 更新: 我想通过互联网把这个项目交给一个人。我希望他们只下载我的项目,而不必下载任何其他内容。但是我的项目有一个外部依赖项,我可以自己下载 我是否可以将此依赖项(自己下载后)包

我在一个scala项目中有一个依赖项,我想将它包含在其中,这样它就可以在项目中使用,而不必为每个使用该项目的人使用Internet。换句话说,我想做一种“本地发布”,但有点不同:本地发布只在我的机器上本地发布,每个使用项目的人也必须在他们的机器上本地发布,而我想在这个scala项目中直接发布这个依赖项

有可能吗?怎么可能

更新

我想通过互联网把这个项目交给一个人。我希望他们只下载我的项目,而不必下载任何其他内容。但是我的项目有一个外部依赖项,我可以自己下载


我是否可以将此依赖项(自己下载后)包含到项目中,并将项目交给该人员,以便他们能够成功运行它?怎么做?我如何使sbt从项目中加载,而不是从Internet或其他任何地方加载

您试图将项目交给的人:您希望他们能够自己构建项目,还是仅仅运行项目

  • 如果您希望其他人能够构建该库:将该库添加为非托管依赖项,如下所述。将库jar放在项目顶层的
    lib
    目录中,并将jar作为项目的一部分检查到版本控制中

  • 如果您只希望其他人能够运行它,请执行以下任一操作:

    • 使用sbt assembly plugin()创建一个包含编译代码和库编译代码的jar

    • 或者将它作为两个独立的jar(您的和库)提供给您的用户,也许还需要一个启动脚本


看起来像你想要的吗?您只需将依赖项添加到项目中的
lib
文件夹中,并将其捆绑起来供其他人使用即可。你可能还想看看有多个模块的项目。我不明白这个问题。您不想将其发布到internet,但也不想在本地发布。可能还有什么其他选择。。。?我不知道“直接发布此依赖项”是什么意思。@SethTisue您不想将其发布到internet上——不是真的。好吧,但我仍在猜测您的实际需求是什么。也许是这个@SethTisue,我更新了问题。是的,构建。我有一个包含几个项目的项目。但是,我将一个.jar放入根目录
/lib
中,将其从
/project/Build.scala
中删除,现在它无法编译,因为它似乎找不到该.jar文件。下面是一个显示
/lib
功能工作的文本:。不知道为什么你的项目会特别不同。您是否尝试过将问题最小化?你能给我们看看你的身材吗。。。?