【发布时间】:2016-08-29 11:22:19
【问题描述】:
部署使用外部模块(如LWP::Simple)的 Perl 6 脚本的最佳策略是什么?
例如,在 Perl 中,我们有 PAR。 Perl 6 中是否有一个选项可以部署一个用户只需要运行的自包含脚本,而无需安装 Rakudo 和外部 Perl 6 模块?
【问题讨论】:
标签: raku
部署使用外部模块(如LWP::Simple)的 Perl 6 脚本的最佳策略是什么?
例如,在 Perl 中,我们有 PAR。 Perl 6 中是否有一个选项可以部署一个用户只需要运行的自包含脚本,而无需安装 Rakudo 和外部 Perl 6 模块?
【问题讨论】:
标签: raku
您可以创建一个 .jar 文件,然后使用 java 执行代码。从那里,有很多工具可以将 .jar 转换为二进制文件(或 Windows 中的 .exe)。
语法是:
perl6 --target=jvm --output=your_file.jar your_file.pl6
如果那个脚本是微不足道的
say "this is running as a .jar file"
你应该可以运行java -jar your_file.jar并得到
this is running as a .jar file
在 macOS 上存在一些问题,因为此功能要求您使用 Java 1.7+ 而不是 Mac 的系统 Java 构建 perl6 (Rakudo Star)。因此,您系统上的版本可能未附带 JVM 支持。
如果您使用的是 homebrew,请执行以下操作来解决此问题:
brew uninstall perl6brew tap homebrew/versions(这样你就可以安装 Java 1.7)brew install Caskroom/versions/java7(安装 Java 1.7)brew install perl6 --with-jvm(构建 perl6 并支持 Java 虚拟机)【讨论】: