在 Maven 生命周期期间运行 JavaScript 文件

发布于 2024-12-05 04:11:27 字数 986 浏览 0 评论 0原文

早些时候,我使用以下命令在 Maven 生命周期中运行 .sh 和 .rb 文件,

          <plugin>
               <groupId>org.codehaus.mojo</groupId>
               <artifactId>exec-maven-plugin</artifactId>
               <version>1.1</version>
               <executions>
                   <execution>
                       <id>Version Calculation</id>
                       <phase>generate-sources</phase>
                       <goals>
                           <goal>exec</goal>
                       </goals>
                   </execution>
               </executions>
               <configuration>
                     <executable>${basedir}/scripts/IndexRunner/test.rb</executable>
               </configuration>
           </plugin>

现在我想运行 .js 文件,我尝试将 test.rb 替换为某些文件 test.js 但它不起作用,有任何帮助吗 如何在 Maven 生命周期中运行 javascript 文件

Earlier I run .sh and .rb file in the maven life cycle using the following,

          <plugin>
               <groupId>org.codehaus.mojo</groupId>
               <artifactId>exec-maven-plugin</artifactId>
               <version>1.1</version>
               <executions>
                   <execution>
                       <id>Version Calculation</id>
                       <phase>generate-sources</phase>
                       <goals>
                           <goal>exec</goal>
                       </goals>
                   </execution>
               </executions>
               <configuration>
                     <executable>${basedir}/scripts/IndexRunner/test.rb</executable>
               </configuration>
           </plugin>

Now I want to run a .js file, I tried by replacing test.rb to some file test.js but its not working, any help to
how to run a javascript file during maven lifecycle

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

岁月静好 2024-12-12 04:11:27

您应该使用触发 javascript 文件的 java 类。使用 exec 插件你可以运行这个文件。文件的内容是这样的。

import javax.script.*;
public class ExecuteScript {
    public static void main(String[] args) throws Exception {
       // create a script engine manager
       ScriptEngineManager factory = new ScriptEngineManager();
       // create a JavaScript engine
       ScriptEngine engine = factory.getEngineByName("JavaScript");
      // evaluate JavaScript code from String
      engine.eval("print('Welocme to java world')");
      // or call file as you wish
      engine.eval(new java.io.FileReader("welcome.js"));
    }
}

You should use a java class which is triggering javascript file. And with exec plugin you can run this file. The content of the file is like this.

import javax.script.*;
public class ExecuteScript {
    public static void main(String[] args) throws Exception {
       // create a script engine manager
       ScriptEngineManager factory = new ScriptEngineManager();
       // create a JavaScript engine
       ScriptEngine engine = factory.getEngineByName("JavaScript");
      // evaluate JavaScript code from String
      engine.eval("print('Welocme to java world')");
      // or call file as you wish
      engine.eval(new java.io.FileReader("welcome.js"));
    }
}
酒浓于脸红 2024-12-12 04:11:27

仅供参考,Github 上还有一个用于此任务的 Maven 插件(使用 Apache Bean 脚本框架):
https://github.com/alexec/script-maven-plugin

FYI, there is also a maven plugin on Github (using Apache Bean Scripting Framework) for this task:
https://github.com/alexec/script-maven-plugin

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文