为脚本语言设置 Maven?

2024-03-02

Maven 用于构建和管理任何基于 Java 的项目。但是如果项目使用脚本语言会发生什么呢?

maven 现在对 TCL 能做的就是复制文件并将它们放在目标目录中的正确位置。

我的问题如下:

  1. 代码在 TCL 中 -> 需要解释器而不是编译器。
  2. 它看不到任何 Java 代码,因此它不会编译任何内容。
  3. 它没有看到任何 Java 测试,因此不会运行它们。
  4. 没有 Java 可以运行覆盖范围,因此 jococo 不会有任何事情可做。

有没有办法设置maven来支持TCL项目?

我在互联网上搜索了很多,只找到了“jacl”,但我真的不知道如何使用它来设置 Maven。


Tcl 没有与 Maven 紧密集成(与 Java 不同),因此您必须做更多的工作。要从 Maven 运行 Tcl 脚本,最简单的方法是使用执行 Maven 插件 http://mojo.codehaus.org/exec-maven-plugin/, 但是你have自己将执行绑定到显式生命周期阶段,而不是依赖默认值。例如,要在test阶段(即,做tclsh testscript.tcl anotherArgument), 你用:

<build>
    <plugins>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>exec-maven-plugin</artifactId>
            <executions>
                <execution>
                    <id>run-tcl-tests</id>
                    <phase>test</phase>
                    <goals>
                        <goal>exec</goal>
                    </goals>
                    <configuration>
                        <executable>tclsh</executable>
                        <arguments>
                            <argument>testscript.tcl</argument>
                            <argument>anotherArgument</argument>
                        </arguments>
                    </configuration>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

Maven 啰嗦了!不要忘记,您可以将大部分复杂性放入父 POM 中,并且可以使用属性和配置文件来做有趣的事情。

您还可以使用java目标是运行 Jacl 或 jTcl 解释器(在子进程中)。这取决于您到底想做什么。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为脚本语言设置 Maven? 的相关文章

随机推荐

  • 扁平列表和免费 monad

    我试图说服自己 List monad 具有平面列表 列表串联和按元素映射的列表 不是一个自由 monad 准确地说 是与某个函子 T 关联的自由 monad 据我了解 我应该能够通过以下方式实现这一目标 首先在 monad 列表中找到常用运
  • 如何将 JSON 转换为 GeoJSON

    我对 javascript 的学习还很陌生 我的基础知识已经碰壁了 我已经设置了一个传单地图 我希望从 JSON 中的绳索上绘制基于 divIcon 的标记 通过我无数次的研究 试图让它发挥作用 我了解到为什么我的 JSON 文件无法工作
  • Matplotlib imshow 中内存使用过多

    我有一个 PyQT4 应用程序 可以在 Matplotlib 图中显示中等大小的图像 我显示的测试图像约为 5Mb 2809 x 1241 像素 顺便说一下 我使用GDAL读取数据 图像被读入数组 其中无数据值被屏蔽 然后用标准化值和指定的
  • NetworkX - 删除节点并重新连接边

    我在图中有一个节点 充当一种 临时连接器 节点 我想删除该节点并更新图中的边 以便其所有直接前驱节点都指向其直接后继节点 是否有内置功能可以做到这一点networkx 或者我需要推出自己的解决方案吗 Example 我有一个图表1 gt 2
  • Kubectl设置环境变量并运行命令

    我有一个在 Kubernetes 上运行的容器 我想在其中从本地终端运行命令 基于其 yaml 文件的容器的工作目录位于 opt gopath src a 但是 我想在目录中运行命令 opt gopath src b 此外 在运行此命令之前
  • OpenCV 和 Python 的书籍? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何关闭ViteJS的模块热加载功能?

    我有一个服务器端渲染production模式Vite应用 我的问题是 网页通常会重新加载并且控制台将显示 vite connecting 我将此追溯到 vite 代码库的热模块重新加载部分 然而 我不想hmr on for producti
  • ggbiplot - 如何不在图中使用特征向量

    我有一个数据集数据 cell line sva 其暗淡为 313 11875 cc pca lt prcomp data cell line sva center TRUE scale TRUE retx TRUE g lt ggbiplo
  • Spring Boot 和 Maven 战争叠加

    我正在使用 Maven 多模块 其中一场战争取决于另一场战争 Spring Boot Web 应用程序依赖于一个仅提供 html 文件的基本 Web 应用程序 当我运行 Spring Boot 应用程序时 我可以从主 web 应用程序 Sp
  • 在 Scala 中使用 json 对象的 play 框架

    你好 我是 scala play 框架的初学者 我创建了一个简单的注册表单并连接到 mysql 来插入行 效果很好 现在我想在同一页面上显示这些插入的行 而不使用 json 刷新页面 请建议我一个想法如何在同一页面上获取插入的行 提前致谢
  • 需要知道每个字段是否已更改,我应该如何在 Hibernate 中对此进行建模

    所以我有一个包含三个字段的类 使用 hibernate 映射到一个表 Class Widget String field1 String field2 String field3 在应用程序启动时 许多实例这些小部件将从外部文件添加到数据库
  • 检索 SQL Server 中的日期; CURRENT_TIMESTAMP 与 GetDate()

    使用 SQL Server 哪一种是用于日期检索的最快或最佳实践方法 之间有区别吗CURRENT TIMESTAMP and GetDate CURRENT TIMESTAMP是标准的 ANSI SQL 因此理论上 如果您需要移动数据库 它
  • 正则表达式:用括号分割忽略引号内的嵌套括号

    我的程序将 SQL VALUES 多行字符串解析为单行字符串数组 典型的输入字符串如下所示 11 1 Service A nested parentheses en 22 2 Service B nested parentheses en
  • Rails:设计:用户确认注册后发送电子邮件

    我的应用程序正在使用 Devise 并且正确发送确认电子邮件 并在用户单击确认链接后正确确认用户 我还想在用户确认后发送第二封电子邮件 关于如何延迟确认或两步确认有很多建议 但没有关于我正在寻找的内容 我可以找到 Devise Module
  • 如何将 HTML 代码添加到 JSF FacesMessage

    默认情况下 每个 JSFFacesMessage以单行形式呈现 我想添加 HTML 换行符 br 消息本身 以便消息显示整齐 我尝试过如下 message new FacesMessage test br test 然而 它被 JSF 转义
  • 如何在另一个方法中的方法中使用局部变量?

    private void UserYoutubeService var youtubeService new YouTubeService new BaseClientService Initializer HttpClientInitia
  • 如何在 Node.js 中向子进程发送“CTRL+C”?

    I tried to spawn child process vvp https linux die net man 1 vvp https linux die net man 1 vvp At the certain time I nee
  • vTigerCRM 7 - 除非手动触发,否则调度程序不会运行任何 cron 作业

    我正在运行 vTiger 7 0 我注意到在这个月的第一天 我没有创建任何发票 然后我查看了调度程序 注意到 上次扫描开始 和 上次扫描结束 字段显示几天内没有任何 cron 作业被触发 cron 作业计划以 15 分钟的间隔触发一次 但
  • PyAPN 和发送之间睡眠的需要

    我正在使用 PyAPN 向 iOS 设备发送通知 我经常一次发送多组通知 如果任何令牌因任何原因损坏 该过程将停止 因此 我使用增强的设置和以下方法 apns gateway server register response listene
  • 为脚本语言设置 Maven?

    Maven 用于构建和管理任何基于 Java 的项目 但是如果项目使用脚本语言会发生什么呢 maven 现在对 TCL 能做的就是复制文件并将它们放在目标目录中的正确位置 我的问题如下 代码在 TCL 中 gt 需要解释器而不是编译器 它看