哪里可以获取Python ANTLR包以使用StringTemplate?

3 投票
2 回答
2985 浏览
提问于 2025-04-16 13:01

我想做一些代码生成的工作,发现StringTemplate这个工具看起来挺不错的。我从PyPi上很简单地安装了stringtemplate3,但当我尝试导入它时,出现了以下错误:

ImportError: No module named antlr

我对此感到困惑,因为我原以为ANTLR是依赖于StringTemplate的(就像网站上说的那样),而不是反过来。不过,无论如何,我找不到正确的包来解决这个问题。安装antlr_python_runtime也没有帮助。

有没有什么提示呢?

2 个回答

1

我之前也遇到过同样的问题,于是我把 antlr 这个 Python 库打包了。你可以通过运行 pip install git+git://github.com/kynan/antlr.git#egg=antlr 来安装它。

3

要使用 stringtemplate3,你需要先安装 python-antlr 这个软件包。在Ubuntu系统上安装的例子如下:

% sudo aptitude install python-antlr
% virtualenv ~/virt
% . ~/virt/bin/activate
(virt)~% easy_install stringtemplate3
(virt)~% python -c 'import stringtemplate3'

顺便提一下,在Macports上这个软件包叫做 py26-antlr3(我不太确定你用的是哪个平台或软件包管理工具)。

撰写回答