Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >用Erlang启动应用程序

用Erlang启动应用程序
EN

Stack Overflow用户
提问于 2012-01-09 06:20:55
回答 3查看 3.1K关注 0票数 3

我想编写一个独立的Erlang应用程序,它可以像任何其他程序一样运行(单击.exe可执行文件)。就像Wings3D一样。

我该怎么做呢?使之成为可能的最佳方法是什么?我在Windows平台上,如果这很重要的话。

第二次更新:

嗯,我还没有导出promodb:start/0函数,这也是Erlang无法启动的原因(而且,正如Muzaaya所说,werl -s不能工作)。但现在我有了另一个奇怪的问题。在我的rebar.config中,我有两个依赖项:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{deps, [
            {cowboy, ".*", {git, "https://github.com/extend/cowboy.git"}},
            {erlydtl, ".*", {git, "https://github.com/evanmiller/erlydtl.git"}}
        ]
}.

在我开始使用Erlang之后

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
erl -pa ebin deps/cowboy/ebin deps/erlydtl/ebin deps/proper/ebin -s promodb

我通过application:which_application()发现只有牛仔才会启动:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[{cowboy,"Small, fast, modular HTTP server.","0.4.0"},
 {stdlib,"ERTS  CXC 138 10","1.18"},
 {kernel,"ERTS  CXC 138 10","2.15"}]

据我所知,Erlang应该启动promodb.app文件中所需的所有应用程序,如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{application, promodb,
 [
    {description, ""},
    {vsn, "0.1"},
    {registered, [promodb_sup]},
    {applications, [
                  kernel,
                  stdlib,
                  cowboy,
                  erlydtl
                 ]},
    {mod, { promodb, []}},
    {env, []}
 ]}.

我做错什么了?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-01-09 23:49:46

我使用rebar escriptize来打包一个独立的包,比如钢筋。然后,您可以在linux中使用./PackageName或在windows中使用escript.exe PackageName

票数 3
EN

Stack Overflow用户

发布于 2012-01-09 07:07:52

我认为您需要创建一个发布包和一个引导脚本,正如文档中所解释的那样。

票数 2
EN

Stack Overflow用户

发布于 2013-01-09 14:25:08

Erlydtl没有应用程序行为,它的工作方式类似于一个库。正如您在erlydtl示例中看到的那样,不需要启动任何应用程序。

https://github.com/evanmiller/erlydtl#template-compilation

检查一下这个:

erl -pa ebin deps/*/ebin

1> erlydtl:<<(<<“{ foo }”>>,my_module_name)。

有用吗?

我喜欢使用escrip化rebar选项来创建可执行文件。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8789863

复制
相关文章
Erlang 03 - Erlang缺陷
Erlang代码具有较为良好的可读性, 其原因之一就在于语义简明. 大部分情况下, 每个操作的成本都清晰可辨, 没有隐式调用的对象构造函数和析构函数, 没有运算符重载(因此+运算符局部可能偷偷摸摸的复制整个对象), 没有虚函数表带来的间接调用, 没有临界区, 也没有阻塞式的消息发送原语. 当然, 函数调用几乎是“无所不能”的, 他们的行为并不是一目了然, 但通常每个函数都附有清晰的文档.
Reck Zhang
2021/08/11
1.7K0
Core Erlang:Erlang的Core中间表示
随着erlang的不断发展,它的语法越来越复杂,不便于诸如分析器,调试器此类程序在源码层次直接进行解析,而CORE Erlang旨在为Erlang提供一个人类可读可改的中间表示(Intermediate representation),这样就能方便面向程序源码的工具的开发。 千言万语不如代码一句。这里我们通过一个例子来直观的了解究竟什么是CORE Erlang。在helloworld.erl中输入如下代码:
racaljk
2018/08/31
9450
用 Erlang 和 VoltDB 玩转 877,000 TPS
hldh214
2018/01/09
2.1K0
adb shell 启动,停止 android 应用程序一、adb启动 应用程序二、adb停止 应用程序
包名和Activity类的类名一定要输入正确,可以用re-sign工具(在最后的弹出信息框会显示出包名和Activity类名)。
一个会写诗的程序员
2018/08/20
5.9K0
python启动应用程序和终止应用程序
每天上班,工作需要,电脑上需要每天开机启动一些软件,下班时候,需要关掉一些软件。一个一个打开和关闭貌似是很繁琐的,于是乎,这个脚本产生了。
py3study
2020/01/07
2.4K0
CentOS安装erlang
yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel(如果已经安装了这些就不用安装)
用户4766018
2022/08/19
9720
Erlang & Unicode
Erlang的string实际上就是整数项组成的list,注意string的编解码使用是使用ISO-latin-1字符集,即:每8字节当成一个整体进行解读;这个字符集是Unicode的子集.Erlang list编解码很容易扩展到整个unicode编码:由于编码是整数和字符的对应关系,只要list中的整函数是有效的Unicode codepoint就可以找到对应的字符;
EltonZheng
2021/01/26
1.6K0
windows下安装Erlang
由于RabbitMQ是用Erlang编写的,因此需要先安装Erlang环境,建议安装的版本新一点。下载地址点我试试
河岸飞流
2019/08/09
2.2K0
Android源码分析--应用程序启动
1.AMS通过调用startProcessLocked方法向Zygote进程发送请求。
xuexiangjys
2022/04/18
6150
Android源码分析--应用程序启动
应用程序进程启动过程
1.AMS在启动应用程序时会检查者应用程序需要的应用进程是否存在,不存在就会请求Zygote进程启动需要的应用程序进程
用户3112896
2019/09/26
7370
应用程序进程启动过程
回顾Erlang简要
世界是并行的,Erlang程序反应了一种思考和交流的方式,个体通过发送消息进行交流,如果有个体死亡,其他个体会注意到。
半吊子全栈工匠
2018/08/22
1.3K0
回顾Erlang简要
erlang 初体验
-module(module_name) %%定义模块 括号内的要和文件名称同样.
全栈程序员站长
2022/07/08
5380
Erlang解决中文问题
1、外部文件使用utf8保存 2、erlang代码使用utf8保存 3、使用xmerl_ucs:from_utf8(Data)转换成unicode编码 4、使用io:format(“~ts~n”, [Data])在shell中打印
EltonZheng
2021/01/26
1.5K0
Linux下安装Erlang
Linux下安装Erlang 一、升级openssl # cd /usr/local/ # wget http://www.openssl.org/source/openssl-1.0.1s.tar.gz # tar -zxvf openssl-1.0.1s.tar.gz # cd openssl-1.0.1s # ./config --prefix=/usr/local/openssl # vim Makefile --修改CFLAG= -DOPENSSL_THREADS 修改成 CFLAG= -fPIC
試毅-思伟
2019/03/21
4.6K0
Linux下安装Erlang
应用程序启动速度的优化
Mozillaproject师通过优化Static Initializer(静态初始化,或全局建构函数, Global Constructor)和Binary布局来提升FireFox启动速度的文章。很有參考价值。
全栈程序员站长
2022/07/06
5460
erlang连接mysql
想使用erlang连接mysql数据库,来百度找方法,但大多方法都不能用,在整合了集中方法之后,整理出了以下内容。
山海散人
2021/03/03
1.3K0
Erlang入门路线
间歇性的学了一些Erlang,写了一个直播cdn网关的程序,也算是贡献了代码,完成了第一个项目。结束之际写一个入门路线,记录学习过程。
职场亮哥
2020/10/10
2.1K0
Erlang Concurrent 并发进阶
使用Erlang而不是其他函数式编程语言的主要原因之一就是Erlang的并发处理能力和分布式编程。并发意味着程序可以在同一时刻执行多个线程。举个例子,操作系统允许你在同一时刻运行文字处理程序,电子表格程序,邮件客户端,和打印任务。系统中的每个处理器(CPU)有可能只处理一个线程,但是它以一定频率交换这些线程,给我们造成一种多个程序是在同一时刻执行的假象。在一个Erlang程序中很容易创建并行执行(parallel execution)的线程,并且运行这些这些线程互相通信。Erlang中,每个执行线程称之为进程(process)。
racaljk
2018/08/31
2.5K0
Spring Boot 应用程序启动流程分析
@SpringBootApplication SpringApplication 以及 run() 方法
凯哥Java
2019/06/28
6980
Spring Boot 应用程序启动流程分析
Quicksilver - 快速启动你的应用程序
偶然间看别人的视频无意中发现这个小软件,感觉很实用。 它是一个launcher,使用它可以通过键盘快速的启动你的应用程序,而不必用鼠标在一堆的应用程序中选择。
EltonZheng
2021/01/26
5150

相似问题

使用参数启动erlang应用程序

10

带有启动参数的Erlang脚本启动应用程序

16

如何编译和启动erlang应用程序?

36

从makefile启动erlang otp应用程序

20

erlang:自动启动/停止测试应用程序

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文