2024 年 Clojure 状态调查!中分享您的想法。

欢迎!有关本网站如何运作的更多信息,请参阅关于页面。

0
tools.deps
重定标签

我对clj -Spom命令背后的逻辑有一些疑问

  • 为什么在顶级添加了sourceDirectory标签?这看起来不是一个有效的标签,mvn validate会因为无法识别的标签错误而抱怨。

  • 每次我重新运行clj -Spom时,都会创建一个新的sourceDirectory标签,这会导致重复的值,这是故意的吗?

  • 为什么只使用:src中的第一元素来填充sourceDirectory,而其他元素则被忽略?

1 答案

0

我无法复制您所见到的(它应该在 <project>/<build>/<sourceDirectory> 中添加)。您可以再次确认您正在使用最新的 clj 版本(目前是 1.10.1.536)。如果您仍然看到这种行为,请提供您的 clj 版本(clj -Sdescribe),java 版本(java -version)和一个用于复制的 deps.edn。

关于您最后的问题,pom 中只有一个用于单个源目录的位置。有各种插件和配置设置可以解决这个问题,但您真正要做什么在很大程度上取决于您要做什么。而不是在这里做出选择,-Spom 会简单地跳过第一个目录之后的所有目录。如果您指定了其他构建配置,它应该保持原样。

by
感谢您的回答 @alexmiller

为了复现我在第一和第二点中描述的内容,在只有一个 `pom.xml` 文件且没有 `/` `/` `` 的目录下运行 `clj -Spom`,例如:

```
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>foo</groupId>
  <artifactId>foo</artifactId>
  <version>0.1.0</version>
  <name>foo</name>
</project>
```

我在该目录中只有 `pom.xml` 文件,没有其他文件。
现在每次运行 `clj -Spom`,都会添加一个新的 `` `` 标签。

我用最新的 clj 版本进行了测试

clj -Sdescribe

```
{:version "1.10.1.536"}
 :config-files ["/nix/store/9fqcvxrqayhhn1b87ys7lwnlqdv2ja5x-clojure-1.10.1.536/deps.edn" "/home/jlle/.clojure/deps.edn"]
 :config-user "/home/jlle/.clojure/deps.edn"
 :config-project "deps.edn"
 :install-dir "/nix/store/9fqcvxrqayhhn1b87ys7lwnlqdv2ja5x-clojure-1.10.1.536"
 :config-dir "/home/jlle/.clojure"
 :cache-dir "/home/jlle/.clojure/.cpcache"
 :force false
 :repro false
 :resolve-aliases ""
 :classpath-aliases ""
 :jvm-aliases ""
 :main-aliases ""
 :all-aliases ""}
```


java -version

```
openjdk version "11.0.6-internal" 2020-01-14
OpenJDK Runtime Environment (build 11.0.6-internal+0-adhoc..jdk11u-jdk-11.0.6-ga)
OpenJDK 64-Bit Server VM (build 11.0.6-internal+0-adhoc..jdk11u-jdk-11.0.6-ga, mixed mode)
```

我没有提供 `deps.edn` 文件,因为我没有它也能复现问题。
by
感谢,这很有帮助。我已将其记录为 https://clojure.atlassian.net/browse/TDEPS-152,我会尽快处理。
...