sbt-assemble 包括测试类

2023-11-21

我跟随sbt-assemble :包括测试类来自中描述的配置https://github.com/sbt/sbt-assemble组装工作正常

当我加载 sbt 时我得到

assembly.sbt:5: error: reference to jarName is ambiguous;
it is imported twice in the same scope by
import sbtassembly.AssemblyKeys._
and import _root_.sbtassembly.AssemblyPlugin.autoImport._
jarName in (Test, assembly) := s"${name.value}-test-${version.value}.jar"
^

因此,我注释导入行并运行 sbt: assembly 但这开始测试但不生成任何-test-.jar.

有人知道如何生成包含测试类的 jar 吗? 谢谢


我必须删除这一行(我认为它现在是基于自动导入的https://github.com/sbt/sbt- assembly/blob/546d200477b64e2602beeb65bfa04306122cd9f5/Migration.md)

import sbtassembly.AssemblyKeys._

我将其余部分(即下面的两行)添加到构建.sbt代替汇编.sbt:

Project.inConfig(Test)(baseAssemblySettings)
jarName in (Test, assembly) := s"${name.value}-test-${version.value}.jar"

采取这些步骤后,测试:组装确实为我生成了一个测试 jar 但是我希望该 jar 只包含测试类(类似于测试:包),但它似乎也包括非测试类。换句话说,如果我有src/main/scala/Foo.scala and src/test/scala/FooTest.scala然后我想这个罐子是由测试:组装只会包括FooTest.class但似乎还包括Foo.class。希望这对您来说不是问题,因为我还不确定如何解决这个问题。

EDIT:如果您希望 jar 只包含来自src/test(就像我一样),然后您可以将以下内容添加到您的 build.sbt 中以过滤掉类路径上可能存在的所有其他内容:

fullClasspath in (Test, assembly) := {
  val cp = (fullClasspath in (Test, assembly)).value
  cp.filter({x => x.data.getPath.contains("test-classes")})
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

sbt-assemble 包括测试类 的相关文章

随机推荐

  • xHTML/CSS:如何使内部 div 获得 100% 宽度减去另一个 div 宽度

    我在外部一个内有 2 个嵌套 div 其宽度 100 两个嵌套的 div 应该在一行中 并且首先应该从它的内容中获取它的大小 div style width 100 border 1px div style border 1px displ
  • R 中的线密度热图

    Problem description I have thousands of lines 4000 that I want to plot However it is infeasible to plot all lines using
  • R 的 allocate() 函数什么时候合适?

    我经常看到新手 R 程序员问他们在哪里使用过的问题assign创建多个对象 然后在尝试操作这些对象以执行后续任务时遇到麻烦 最近的一个例子 assign它对新手用户很有吸引力 因为它具有动态属性 除了变量值之外 还以编程方式创建变量名 并且
  • 使用 Laravel Collection 获取重复值

    我不想删除重复值 我想获取articles id重复项并对它们的数量值求和 例如 这是我的集合 Collection 306 items array 3 0 gt CartLine 294 quantity 2 article id 172
  • 在 CMake 中执行命令或宏作为“配置”步骤完成之前的最后一步

    在配置阶段完成之前 是否可以使用 CMake 版本 gt 2 8 7 作为最后一步执行宏或命令 应在屏幕上打印以下行之前执行该功能 Configuring done Generating done 到目前为止 我无法找到可以用作依赖项来实现
  • Symfony2 自定义表单类型使用尝试测试它的实体

    我正在尝试测试我创建的表单类型 该表单类型使用带有类实体的字段 这是表单的创建 builder gt add name text gt add description textarea gt add services entity arra
  • 直接从 CompletableFuture.thenAccept 返回值

    我正在尝试从我的列表中返回一个列表CompletableFuture像这样 public List
  • java 8 中“特定类型的任意对象”是什么意思?

    Java 8 中有 方法引用 功能 其中之一是 引用特定类型的任意对象的实例方法 http docs oracle com javase tutorial java javaOO methodreferences html type 有人可
  • 混淆或保护 .Net 程序集的最佳方法[关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 我正在寻找一种技术或工具 我们可以用它来混淆或以某种方式保护我们编译的 C 代码 目标不是为了用户 数据安全 而是阻碍我们软件中某些技术的逆向工程 这不适用于网络 而是用于桌面应用程
  • 可以阻止 cin 等待输入吗?

    在图形应用程序中 我使用控制台输入执行调试命令 创建控制台时 还会创建一个新线程来收集处理所有输入的用户命令 图形应用程序将继续并行运行 我使用 boost thread 库 到目前为止效果很好 但是我还没有找到一个很好的解决方案来停止该线
  • 使用 imagerotate() 旋转图像后如何获得新的宽度和高度?

    如何实际获取图像旋转后设置的新宽度和高度 ps product angle 77 Could be any angle filename test png filename to the original product list sour
  • 如何在 Django 视图中最好地启动异步作业请求?

    我的视图功能之一是一个非常长的处理工作 显然需要以不同的方式处理 最好不要让用户等待很长时间 最好是我能够午餐处理处理作业 该处理作业将通过电子邮件发送结果 并且无需等待完成即可通知用户他们的请求正在处理并让他们继续浏览 我知道我可以使用
  • C++中的函数指针赋值和调用?

    我知道当我们使用函数名称作为值时 该函数会自动转换为指针 看下面的代码 int print int a return a int main int p int print int q int print cout lt lt p 8 lt
  • PHP 正则表达式验证字母和西班牙口音

    我如何添加 临时修改我的代码 以便除了正常字母表 a z 之外 西班牙口音也被视为有效 我的代码中有以下内容 public static function IsAlpha s reg a z s i count preg match reg
  • 在Python中删除字符串中间的连续字符[重复]

    这个问题在这里已经有答案了 从字节转换为字符串后 Google 地图 API 的标准返回值如下所示 b n destination addresses Washington DC USA n origin addresses New Yor
  • 在 java (JSP) 中提取 .tar.gz 文件

    我似乎无法导入所需的包或找到任何有关如何提取的在线示例 tar gzjava 中的文件 更糟糕的是我正在使用 JSP 页面 并且在将包导入到我的项目中时遇到问题 我正在将 jar 复制到WebContent WEB INF lib 然后右键
  • Typescript 方法装饰器

    我有这个代码 function changeFunc return function target any title string descriptor PropertyDescriptor descriptor value functi
  • Python 不向多个地址发送电子邮件

    我看不出我哪里出了问题 我希望有人能发现这个问题 我想向多个地址发送电子邮件 但是 它仅将其发送到列表中的第一个电子邮件地址 而不是同时发送到两者 这是代码 import smtplib from smtplib import SMTP r
  • 检测用户所做的屏幕分辨率更改(Java Listener?)

    我有一个 Java 应用程序 可以启动 创建 GUI 并且运行良好 如果用户更改屏幕分辨率 从 1440x900 切换到 1280x768 我希望能够侦听该事件 有任何想法吗 PS 我想在事件 侦听器模式下执行此操作 而不是在轮询模式下执行
  • sbt-assemble 包括测试类

    我跟随sbt assemble 包括测试类来自中描述的配置https github com sbt sbt assemble组装工作正常 当我加载 sbt 时我得到 assembly sbt 5 error reference to jar