问题标签 [mill]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
38 浏览

scala - 如何从 Mill build.sc 文件中的 Seq[Path] 创建源?

磨坊文件

源使用 T.sources {…​} 定义,将一个或多个 os.Paths 作为参数。Source 是 Target[Seq[PathRef]] 的子类

所以这在mill v0.9.9中是可能的

和这个

但这些不编译:

是否有可能def sourceRoots: Sources = T.sources ...从一系列路径创建?

0 投票
1 回答
43 浏览

scala - mill 中指向 build.sc 文件所在目录的首选方法是什么?

mill 中指向build.sc文件所在目录的首选方法是什么?

在磨机文档os.pwd中使用例如here,但如果可以从其他地方启动/运行磨机,则os.pwd指向不正确的位置。

0 投票
1 回答
26 浏览

scala - Mill 任务如何更新环境变量,以便以后运行的任务可以看到更新后的值?

在 mill v0.9.9 Task Context API 文档中说

Mill 保留了一个长期存在的 JVM 服务器,以避免支付周期性类加载的成本。因此,在任务中运行 System.getenv 可能不会产生最新的环境变量,因为它将在服务器启动时初始化,而不是在客户端执行时初始化。为了规避这种情况,mill 的客户端在看到环境变量时将其发送到服务器,服务器通过 Ctx API 将它们作为 Map[String, String] 提供。

所以读取最新的环境变量很简单:

但是任务如何做到这一点:“mill 的客户端将环境变量发送到服务器”以便下一个运行的任务将看到更新的环境变量?

0 投票
1 回答
41 浏览

scala - 如何在 Mill ivyDeps 中定义 withSources 和/或 withJavadoc

如果要加载模块源代码和/或 javadocs,请编写以下 sbt:

在工厂你说

但是如何添加withJavadoc()或添加withSources()withSources() withJavadoc()mill build.sc?有功能.withConfiguration(String)但没有 scaladoc 如何使用它。

是否可以定义一个模块仅在测试中可用(就像org.scalatestplus.play在前面的代码中一样)或者我应该为测试模块创建单独的 ivyDeps?

0 投票
1 回答
35 浏览

scala - 磨坊:失败解决AmmoniteReplIvyDeps

我有以下非常简单的模块定义build.src

磨机版本是 0.9.9

然后我尝试运行

https://repo1.maven.org/maven2/com/lihaoyi/ammonite_2.13.6的内容如下:

所以请求的目录2.3.8-65-0f0d597f不存在。

我怎样才能解决这个问题?

这是在哪里2.3.8-65-0f0d597f配置或选择的?为什么磨坊想要这个不存在的菊石版本?

当我启动本地安装的 ammonite 时,它​​显示以下版本信息:

谢谢您的帮助!

0 投票
0 回答
52 浏览

scala - 如何在同一目录/项目中同时使用 IntelliJ Idea 和/或 VSCode IDE 进行 mill 和 sbt 构建?

我尝试将我的一些 sbt 构建转换为mill。如果我可以在过渡期间在同一目录中同时将 IDE 用于 mill 和 sbt 项目,这将有助于过渡。

IntelliJ Idea 或 VSCode + metal 是否可以在同一目录中打开并使用两个不同的项目(build.sbt、build.sc),如果是,那么该怎么做?

实现这一点的一种方法(我还没有尝试过)可能是同时使用 VSCode 和 IntelliJ Idea,一种用于 sbt build,另一种用于 mill build。有什么想法可以用于mill build,哪个用于sbt build?为什么?

0 投票
1 回答
39 浏览

scala - 使用 Gradle/Mill 的 scalatra 项目所需的 Twirl 依赖项

对于 Web 应用程序,我使用的是 scalatra。Mill是我选择的构建工具。为了呈现 UI,我正在考虑使用 twirl 模板引擎。但是,我通过的所有示例/参考资料都只显示了使用 sbt 的 twirl。

非 sbt 项目需要哪些所有 twirl 依赖项?

0 投票
0 回答
189 浏览

scala - Scala VSCode,金属智能感知无法正常工作

此代码确实可以使用 mill 编译和运行,但智能感知显示错误“object pwd is not a member of package foo.os bloop”

我有金属 vscode 扩展,它确实识别项目库中的 os-lib。它确实显示了 os.pwd 的类型,但它仍然显示错误。

0 投票
0 回答
22 浏览

scala - IntelliJ 是否有 Mill“运行配置”?

我试图弄清楚如何为 Scala Mill 项目创建“运行配置”。

Maven 和 SBT 有条目,但 Mill 没有。IntelliJ 似乎也没有“Mill”插件。

我用这个命令创建了一个 Scala Mill 项目:

并安装构建服务器协议:

最好只制作一个运行的“Shell Script”配置mill foo.run吗?

IntelliJ 运行配置

0 投票
1 回答
24 浏览

scala - 如何指定 Mill 运行的主类(在根目录中)?

我是sbtmill的新手,我正在练习使用这两种工具来构建凿子(scala 项目)。查看这个github 存储库作为参考,我想知道如何在该存储库中编写mill-version build.sh

这是我的目录结构

build.sh 所做的是在根目录中准备一个样板作为 main 函数,以使编译和运行过程更加容易,它是 sbt 版本。我很好奇为什么 sbt 可以检测到 main 函数(_temphelper.Elaborate),即使它不在 src/main 目录中。而当我改用 Mill 时,Mill 根本无法检测到 _temphelper.scala,除非我将文件移动到 root/src/main。有没有设置可以让 Mill 做 sbt 可以做的事情?

我不确定这个问题是否与...有关

  1. 更改 sbt 中的sourceDirectories和 Mill 中的chiselMoudule.sources。欢迎任何建议。

  2. 修改millSourcePath来实现我的请求。

我的问题是我应该做哪些设置才能使mill可以检测到根目录中的主类?