初始想法
在Clojure CLI安装中包含`.config/clojure/tools/project.edn`配置,当运行`clojure -Tproject create`命令时将运行seancorfield/deps-new。
这似乎将提供一种解决方案,以解决当前问题,同时不会在Clojure CLI中引入大量的代码设计。
或者,这个类可以克隆(或下载一个包含相关别名和工具的配置的zip存档),这些工具提供了此功能,而无需为Clojure CLI直接设计项目工具
> 我假设git clone在范围内,因为有多种方法使用桌面UI、Web UI等进行操作,所以似乎不会超出原始作者的目标受众(我已经多次以这种方法教过使用无代码产品的人)
理解极限最小化项目的价值
我难以理解极端最小化Clojure项目的价值,部分原因是我假设这个请求是要说明想要什么,而没有详细说明如何使用它(课程计划的范围是什么)
关于Clojure的教学方法和教学范围的详细说明将有助于理解其价值。否则,它似乎只针对原始作者的需求,而不是社区的有用工具。
我的顾虑是
1. 依赖于隐含的配置知识
拥有一个仅包含`{}`的项目配置文件自然会提出问题:它是如何工作的,接着就会讨论Clojure CLI如何引入Clojure依赖并将其添加到类路径中
2. 没有例子来支持学习
包括一个最小的`:paths`和`:deps`配置将提供一种简单的方式来展示添加更多配置时所需的语法(这是否在范围之外很难说)
同样也可以为包含别名进行论证,例如一个测试运行器
3. 为特定用例创建某物
我认为在Clojure CLI中引入项目创建工具不妥,除非考虑到更广泛的社区需求。至少不要作为发布功能。
4. 重新发明
clj-new和deps-new已经提供了创建项目的方法,而一个最小的scratch模板似乎可以满足原始作者的需求(以我有限的了解)
https://github.com/seancorfield/deps-new#create-a-minimal-scratch-project
这可以是课堂安装说明的一部分(包括Java & Clojure CLI)或者复制到学生电脑上的用户配置。
还有更多问题,但这实际上取决于原始请求的范围。