Trac系列(7):安装Trac插件

自0.9版本,Trac支持通过插件来扩展内部的功能。插件的功能来自于Trac的组建架构(component architecture)

要求

Trac中的插件是以setuptools包装成一个称为“egg”的包,它与Java™的JAR文件类似,不过是用于Python的。为了使用egg,我们必须安装SetupTools(0.6版本)。我们可以下载ez_setup.py这个自引导模块来安装setuptools。下载后(假设文件放在c:\python24\目录)执行如下图的命令:


从图中我们可以看到,ez_setup先从网上下载setuptools,然后安装,所以使用这种方法安装需要你的机器连上互联网。

如果使用ez_setup.py安装setuptools失败或不能联网,我们也能从PyPI网站下载,然后手工安装。

在Trac中,插件可以放在两个地方,Trac环境的目录(为单个项目安装插件)或全局目录(0.10及以后版本提供)(为全部项目安装插件)。

Trac插件的形式

1. egg

大部分的插件都是以egg包的形式存在的,其实这个包是zip格式的,我们可以用winzip、winrar等压缩用具打开。如果有egg最好了,可以直接使用。

2. 源码

有些插件没有提供egg包,直接给出了源码。我们可以直接使用源码安装插件,也自己自己构建成egg包。

如果有插件的源码,如何构建egg呢?

  • 解压缩源码,里面应该有setup.py。
  • 运行:

            python setup.py bdist_egg

然后,我们将得到一个*.egg文件。

详情见下图:

 

 

 

安装Trac插件

为单个项目

一旦我们有了插件包(egg包),我们只需要把它拷贝到Trac项目环境的“plugins”目录下。同时,确保web服务器有足够的权限可以访问。需要注意的是,Python的版本必须匹配。

为所有的项目

上面的介绍是将插件安装到单个Trac项目中,也就是把egg文件拷贝到项目的插件目录下。这里将介绍如何为所有的Trac项目(包括以后建立的项目)安装插件,根据插件源的不同有两种方式

使用.egg文件

如果我们有插件的.egg文件,很简单,使用easy_install安装即可(具体的介绍见这里

    easy_install *.egg

从源代码安装

easy_install能够网络安装,只需要指定一个subversion的仓库URL路径或者tarball/zip的路径。比如,WebAdmin可以这样安装

      easy_install http://svn.edgewall.com/repos/trac/sandbox/webadmin

启动插件

我们还需要通过修改trac.ini文件来启动插件,一般都是在trac.ini文件的[components]区域,比如:

[components]
webadmin.* = enabled

关于在trac.ini做怎样的修改,请查看插件的相关文档。也可以在插件的源代码中的__init__.py看到。
注意:安装后需要重启Web服务器。

疑难解答

如何知道setuptools已经正确的安装了?

执行下面的命令:

      python -c "import pkg_resources"

如果没有输出,setuptools已经安装了,否则,你需要安装setuptools。

如何获取Python egg的正确版本?

Python egg在文件名中注明了Python的版本。比如,MyPlugin-1.0-py2.4.egg是针对Python 2.4的,如果Trac运行在不用的Python版本上(比如2.3或者2.5),这个egg将不会被载入。

本文基本上都是翻译自Trac官网的Trac Plugins,并有所删减。在这里只是说了如何安装Trac插件,并没有举例。在本系列的下一篇《使用WebAdmin插件管理Trac项目》里,将详细的演示如何安装WebAdmin这个非常棒的Trac插件。
这里有很多值得推荐的Trac插件,更多的可以查看Trac插件的官方网站

参考文献:
           Trac的官方指南中的Trac Plugins
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值