【发布时间】:2017-03-25 23:42:56
【问题描述】:
我的应用程序Alambic 使用 The Great Mojolicious 框架,并定义了可以执行的命令,例如$ script/alambic alambic init.
现在,当我查看 Joel Berger 的 Galileo 和其他出色的作品时,我发现他们有一个可以在 shell 中直接调用的 system 命令,例如$ galileo init。我查看了 mojolicious 文档,但发现对我的应用程序没有任何帮助。现在我什至不确定是 Mojolicious 还是 Perl CPAN 构建过程使它成为可能。任何提示将不胜感激。
【问题讨论】:
-
您需要将脚本放置在 PATH 中可以找到的某个位置。通常这是 bin 目录,它将被安装到正确的位置。如果您想发布到 cpan 或构建使用 cpan 安装的发行版(但不上传到 PAUSE),那是可行的方法。查看 App::Cpanminus 或 App:: 命名空间中的其他内容以获取示例。您可以在 metacpan.org 或他们的 github 上浏览他们的代码。如果您发布到 CPAN,请将您的应用也移动到 tie App:: 命名空间中。
-
谢谢@simbabque 我想我现在明白了。但是你所说的 tie App:: 命名空间是什么意思?在 mojolicious 中,我的命名空间是 Alambic:: 那么在构建时如何使它成为不同的命名空间呢?你有任何指针或资源吗?谢谢!
-
我没有说领带。一般来说,在 PAUSE 上声明一个顶级命名空间是不受欢迎的,但是看到你的东西非常大并且有一个应该可以的唯一名称。无视这一点。
标签: perl mojolicious