当前位置:  编程技术>移动开发
本页文章导读:
    ▪Trac 装配与开发管理        Trac 安装与开发管理 1 安装 Trac 前的准备工作 1.1 准备工作 安装 Python 2.7; 安装 Python Setupfile ; 安装 Genshi ,可以用下面的命令用 Setupfile 来安装。 easy_install Genshi 2 安装 Tr.........
    ▪ phonegap打开联接后在浏览器中打开        phonegap打开连接后在浏览器中打开 问题描述:phonegap的html5中打开超链接,或跳转页面,或者js打开连接的时候,每次都从浏览器中打开解决方法:在Cordova.plist中有属性OpenAllWhitelistURLsInWebVi.........
    ▪ hive 装配 max key length is 767 bytes       hive 安装 max key length is 767 bytes hive安装 ,并使用mysql数据库为元数据库使用hive-0.8.0安装hive前,事先安装mysql用于保存元数据,安装ant用于启用HWI1、在namenode安装hive。下载并解压hive文件后,进.........

[1]Trac 装配与开发管理
    来源: 互联网  发布时间: 2014-02-18
Trac 安装与开发管理
1 安装 Trac 前的准备工作
1.1 准备工作
  • 安装 Python 2.7;
  • 安装 Python Setupfile ;
  • 安装 Genshi ,可以用下面的命令用 Setupfile 来安装。
  • easy_install Genshi
    
    2 安装 Trac

    用 easy_install 来安装 Trac,详细的说明可以看官方文档 ,或者在这一步,直接下载 Windows 的 Trac 安装文件来进行安装。

    3 配置Trac环境

    完成上述的安装后,就可以创建一个 TracEnvironment,它是 Trac 存储信息的地方,如 wiki pages, tickets, reports, settings 等。

    3.1 通过 trac-admin 创建一个 Trac Environment

    我的做法是先在d盘新建一个trac目录,然后执行:

    $ trac-admin d:/trac/mytest initenv    
    

    然后根据提示输入项目的名字(myproject),数据库连接字符串(默认),你的源代码资源库路径,根据相应的提示,输入相关信息即可。

    如果提示如下错误:

    C:\Python27\Scripts>tracd -p 8080 e:/trac/MyTest
    Traceback (most recent call last):
      File "C:\Python27\Scripts\tracd-script.py", line 5, in <module>
        from pkg_resources import load_entry_point
      File "C:\Python27\lib\site-packages\pkg_resources.py", line 2603, in <module>
        working_set.require(__requires__)
      File "C:\Python27\lib\site-packages\pkg_resources.py", line 666, in require
        needed = self.resolve(parse_requirements(requirements))
      File "C:\Python27\lib\site-packages\pkg_resources.py", line 565, in resolve
        raise DistributionNotFound(req)  # XXX put more info here
    pkg_resources.DistributionNotFound: Genshi>=0.6
    

    则表明没有安装 Genshi。

    3.2 运行成功后,即可以开启 Trac 服务

    可以通过 tracd 命令 来开启 Trac 服务,命令如下:

    tracd --port 8000 E:\Trac\MyTest
    

    启动成功后,即可通过网址:

    http://localhost:8000/MyTest
    

    来访问相关的 Trac 服务,这时即访问 MyTest 这个工程。

    其它机器也可以通过访问这台机器的 IP 加端口来访问这个服务。最基本、最简单的使用,可以不用 Apache 来搭建 Web 服务器。

    3.3 添加用户

    刚安装好的 Trac,并没有提供一个用户注册面板,也没有设置管理员权限,这个时候,我们需要自己来添加用户。

    这一点经常让我这种习惯了用其它管理系统的人摸不着头脑,系统怎么没有让我设置相关的管理员用户名和密码呢?

    最简单的方法是这样的:

    直接用 Generating Passwords Without Apache 里提到的方法:

    $ python trac-digest.py -u username -p password >> c:\digest.txt
    $ tracd --port 8000 --auth=proj_name,c:\digest.txt,trac c:\path\to\proj_name
    

    直接就可以把 username 添加到某个工程里,并可以登陆了。

    3.4 Trac 管理员密码的设置

    单纯把某个用户添加到了工程里,并不能让这个用户有管理工程的权限,所以,需要单独分配权限给这个用户:

    比如说,我要分本给 admn 这个用户管理员权限,可以用下面的语句:

    $ trac-admin /path/to/projenv permission add admin TRAC_ADMIN
    

    现在重启一下 Trac 服务器,你再用 admin 登陆,就可以看到右边有一个 Admin 的控制面板了。

    最好的办法,你给不同的 projects,添加不同的用户名,为不同的 project,开启不同的端口,这样就不会相互影响了。

    3.5 有了管理员密码,就可以进行一些基础配置
    • 不让匿名用户看到任何内容

      出于对工作及公司的安全性考虑,我们完全有理由不让匿名用户看到 Trac 里的任何内容。

    4 更加高级的功能
    4.1 用 Apache 服务器来提供网页版服务

    用第4种方法开启的服务,只能在本机使用,如果需要让一个团队都能访问的话,需要开启一个 Apache 服务器。

    http://trac.edgewall.org/wiki/TracInstall#RunningTraconaWebServer

    4.2 提供网页注册用户名等功能
  • 先安装一个 Trac Account Manager Plugin 工具
  • 可以直接用 easyinstall 来安装

  • 重启服务器,在 Plugins 里开启本功能即可。
  • 注意一定要像图中一样,开启那个右上角的 1 字符。

    realm 的用处是区分这个用户名属于哪里的,现在这样,很容易地区分出来。和之前 tracd 命令启动时带的参数一样。

    还可以针对不同的工程,设定不同的密码文件,这样可以有效地隔离不相干人群。

    使用这个还有一个需要注意的,就是,公司内部使用的话,可以把烦人的 Email Verification 关掉。

    4.3 提供邮件发送 ticket 提醒等功能

    用 Gmail 的话,可查看这篇日志 ,有关如何设置用 Gmail 来发提醒邮件的功能。

    4.4 导出为 Excel 或 Word

    可以导出数据为 CSV 或 Text 格式:

    Trac also exports reports and custom queries to CSV, which will open in Excel directly. Click the "Comma-delimited Text" link near the bottom.

    4.5 Trac 的备份

    对于 Trac 这种团队用的东西,备份是非常重要的。成一数据丢了,项目也就完蛋了。

    Trac 支持热备份 ,可以很方便地用下面的命令来对某个工程进行备份:

    $ trac-admin /path/to/projenv hotcopy /path/to/backupdir
    

    注意,这个只能是对工程一个一个的进行备份,其实就是把 Trac 工程的所有文件都打了一个包。

    所以,为了备份简单,应该要把密码文件也放到 projenv 的目录里,这样备份起来,会一起把用户名和密码文件打包的。

    只要备份完全,你完全可以在别外一台机器上,在另一台机器上配置好 Python 环境,再安装好 Trac ,再把这些备份的文件,扔到一个运行目录里,再用同样的命令就可以直接把该 project 跑起来了。

    非常便利!

    4.6 Trac 换主题

    默认的 Trac 主题并不算十分好看,这里有大把主题可以换:

    http://trac-hacks.org/wiki/theme

    4.7 Trac 上搭建一个博客系统

    可以通过这个博客系统及时通知团队有什么新的更新内容之类的。

    安装插件:Self-contained Blog plugin

    4.8 Trac 作为服务程序开机启动
    5 Trac 的缺陷

    针对 Trac 0.12 来说的缺陷,

    • 没有办法来定制 component 和 sub-component 这样的层级关系;
    • 各种功能都齐全,可是各种功能都不强大,样样都不精;
    • 没有办法控制用户可以看到哪个 component 这样的权限,从而不方便对大型项目进行管理;
    • 好像没有语言包这种机制,不太好弄。
    • 没有办法用邮箱作为用户名。
    • 流程定制能力太差,好像没办法定制 driver 和 rider 之类的东西。
    • ower 这种东西,没有办法用下拉列表的方式来表示。

    [fn:author] 台湾著名计算机技术作家。

    Footnotes:

    1 FOOTNOTE DEFINITION NOT FOUND: 1


        
    [2] phonegap打开联接后在浏览器中打开
        来源: 互联网  发布时间: 2014-02-18
    phonegap打开连接后在浏览器中打开
    问题描述:phonegap的html5中打开超链接,或跳转页面,或者js打开连接的时候,每次都从浏览器中打开
    解决方法:在Cordova.plist中有属性OpenAllWhitelistURLsInWebView设置为YES既可;

        
    [3] hive 装配 max key length is 767 bytes
        来源: 互联网  发布时间: 2014-02-18
    hive 安装 max key length is 767 bytes

    hive安装 ,并使用mysql数据库为元数据库
    使用hive-0.8.0
    安装hive前,事先安装mysql用于保存元数据,安装ant用于启用HWI
    1、在namenode安装hive。下载并解压hive文件后,进入hive/bin/下,配置hive-config.sh文件:
    export HADOOP_HOME=/home/hadoop/hadoop-0.20.203.0
    export PATH=.:$HADOOP_HOME/bin:$PATH
    export HIVE_HOME=/home/hadoop/hive-0.8.0
    export PATH=$HIVE_HOME/bin:$PATH
    export JAVA_HOME=/usr/java/jdk1.7.0_01
    export JRE_HOME=/usr/java/jdk1.7.0_01/jre
    export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH 
    export PATH=.:$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
    2、将hive加入到环境变量中:
    export HIVE_HOME=/home/hadoop/hive-0.8.0
    3、在mysql中创建hadoop的用户,密码也为hadoop,并创建元数据库:
    mysql 
    mysql> CREATE USER 'hadoop'@'master' IDENTIFIED BY 'hadoop';
    mysql> GRANT ALL PRIVILEGES ON *.* TO 'hadoop'@'master' WITH GRANT OPTION;
    mysql> exit
    4、下载文件mysql-connector-java-5.1.15-bin.jar,保存到lib文件目录下。
    否则出现错误:
    hive> show tables;
    FAILED: Error in metadata: javax.jdo.JDOFatalInternalException: Error creating transactional connection factory
    NestedThrowables:
    java.lang.reflect.InvocationTargetException
    FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask
    5、在hive/conf/文件夹中,新建hive-site.xml文件,并复制进hive-default.xml.template的全部内容,作以下修改:
    (使用mysql为元数据库)
    <property> 
      <name>hive.metastore.local</name> 
      <value>true</value> 
    </property>
    <property>
      <name>javax.jdo.option.ConnectionURL</name>
      <!--<value>jdbc:derby:;databaseName=metastore_db;create=true</value>-->
      <value>jdbc:mysql://master:3306/metastore</value>
      <description>JDBC connect string for a JDBC metastore</description>
    </property>
    <property>
      <name>javax.jdo.option.ConnectionDriverName</name>
      <value>com.mysql.jdbc.Driver</value>
      <description>Driver class name for a JDBC metastore</description>
    </property>
    <property>
      <name>javax.jdo.option.ConnectionUserName</name>
      <value>hadoop</value>
      <description>username to use against metastore database</description>
    </property>
    <property>
      <name>javax.jdo.option.ConnectionPassword</name>
      <value>hadoop</value>
      <description>password to use against metastore database</description>
    </property>
    6、在hdfs中创建几个目录
    $HADOOP_HOME/bin/hadoop fs -mkdir /tmp
    $HADOOP_HOME/bin/hadoop fs -mkdir /user/hive/warehouse
    $HADOOP_HOME/bin/hadoop fs -chmod g+w /tmp
    $HADOOP_HOME/bin/hadoop fs -chmod g+w /user/hive/warehouse
    7、启动hive
    启动hive:$HIVE_HOME/bin/hive
    8、启动hwi界面:
    export ANT_LIB=/opt/ant/lib
    bin/hive --service hwi
    bin/hive --service hwi --help
    9、在hive命令行模式下,使用show tables;测试mysql连接是否正确。


    用mysql做元数据


    alter database hive character set latin1

    这样才不会报  max key length is 767 bytes
    com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Specified key was too long; max key length is 767 bytes

    这个异常

        
    最新技术文章:
    ▪Android开发之登录验证实例教程
    ▪Android开发之注册登录方法示例
    ▪Android获取手机SIM卡运营商信息的方法
    ▪Android实现将已发送的短信写入短信数据库的...
    ▪Android发送短信功能代码
    ▪Android根据电话号码获得联系人头像实例代码
    ▪Android中GPS定位的用法实例
    ▪Android实现退出时关闭所有Activity的方法
    ▪Android实现文件的分割和组装
    ▪Android录音应用实例教程
    ▪Android双击返回键退出程序的实现方法
    ▪Android实现侦听电池状态显示、电量及充电动...
    ▪Android获取当前已连接的wifi信号强度的方法
    ▪Android实现动态显示或隐藏密码输入框的内容
    ▪根据USER-AGENT判断手机类型并跳转到相应的app...
    ▪Android Touch事件分发过程详解
    ▪Android中实现为TextView添加多个可点击的文本
    ▪Android程序设计之AIDL实例详解
    ▪Android显式启动与隐式启动Activity的区别介绍
    ▪Android按钮单击事件的四种常用写法总结
    ▪Android消息处理机制Looper和Handler详解
    ▪Android实现Back功能代码片段总结
    ▪Android实用的代码片段 常用代码总结
    ▪Android实现弹出键盘的方法
    ▪Android中通过view方式获取当前Activity的屏幕截...
    ▪Android提高之自定义Menu(TabMenu)实现方法
    ▪Android提高之多方向抽屉实现方法
    ▪Android提高之MediaPlayer播放网络音频的实现方法...
    ▪Android提高之MediaPlayer播放网络视频的实现方法...
    ▪Android提高之手游转电视游戏的模拟操控
     


    站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3