使用hexo创建github博客
http://oyjt.github.io/2016/01/14/%E4%BD%BF%E7%94%A8hexo%E5%88%9B%E5%BB%BAgithub%E5%8D%9A%E5%AE%A2/

发表于 2016-01-14 | 分类于 随笔 | 6条评论 | 阅读次数 1481
前面说过,之前用wordpress辛辛苦苦搭建的博客,因为服务器和域名的问题挂掉了。后来发现github也能够搭建自己的博客,不需要去关心主机域名的问题,而且还能使用Markdown来写博客,就研究了一番。
。。。。。。


使用hexo创建github博客
发表于 2016-01-14 | 分类于 随笔 | 7条评论 | 阅读次数
前面说过,之前用wordpress辛辛苦苦搭建的博客,因为服务器和域名的问题挂掉了。后来发现github也能够搭建自己的博客,不需要去关心主机域名的问题,而且还能使用Markdown来写博客,就研究了一番。

创建博客页面仓库

创建地址:https://github.com/new
创建仓库的前提是必须先有github账号,至于怎么注册账号,就不具体展开说明了。
创建的仓库名字需要和你的账号对应,如oyjt.github.io
输入基本信息,然后点击创建仓库
这里写图片描述

进入项目设置页面

现在仓库就已经建好了,接下来进入设置界面。
因为这个项目就是专门的放页面的,所以master分支即可。
这里写图片描述

进入页面自动生成器

在设置界面,点击运行自动页面生成器,其他默认即可。
这里写图片描述

写第一篇博客

点击之后,会跳到下面的页面,现在我们来写第一篇博客
这里写图片描述
写完之后点击继续,选择一个主题
这里写图片描述

选择主题并发布

这里提供了一些主题,可以一个个点击查看效果,找的喜欢的主题之后,就可以发布了。
选择主题之后,会生成一些css,html,img到你的仓库。
如果没有找到自己喜欢的主题,可以用其他的主题,当然也可以自己修改主题。
这里写图片描述

查看效果

现在,你就可以访问自己的github主页了。
比如我的博客访问地址:http://oyjt.github.io/
访问效果图:
这里写图片描述

到这里你会奇怪,说了这么多和hexo有什么关系,完全都没用到hexo,内容和标题完全不搭嘛。
是的!没错,为了便于管理博客,接下来就是hexo部分,请继续往下看吧!

了解Hexo

Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。

安装Hexo

安装 Hexo 相当简单。然而在安装前,您必须检查电脑中是否已安装下列应用程序:

Node.js
Git Windows
上面是以Windows系统作为例子,其他系统以及具体的安装方法,就不展开说明了。
如果您的电脑中已经安装上述必备程序,那么恭喜您!接下来只需要使用 npm 即可完成 Hexo 的安装。

1
2
3
4
npm install hexo-cli -g

如果命令无法运行,可以尝试更换taobao的npm源

npm install -g cnpm --registry=https://registry.npm.taobao.org
创建Hexo文件夹

安装 Hexo 完成后,请执行下列命令,Hexo 将会在指定文件夹中新建所需要的文件。

1
2
3
$ hexo init
$ cd
$ npm install
新建完成后,指定文件夹的目录如下:

1
2
3
4
5
6
7
8
.
├── _config.yml
├── package.json
├── scaffolds
├── source
| ├── _drafts
| └── _posts
└── themes
Hexo 文件简介

_config.yml
网站的 配置 信息,您可以在此配置大部分的参数。

package.json
应用程序的信息。EJS, Stylus 和 Markdown renderer 已默认安装,您可以自由移除。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package.json
{
"name": "hexo-site",
"version": "0.0.0",
"private": true,
"hexo": {

"version": ""

},
"dependencies": {

"hexo": "^3.0.0",
"hexo-generator-archive": "^0.1.0",
"hexo-generator-category": "^0.1.0",
"hexo-generator-index": "^0.1.0",
"hexo-generator-tag": "^0.1.0",
"hexo-renderer-ejs": "^0.1.0",
"hexo-renderer-stylus": "^0.2.0",
"hexo-renderer-marked": "^0.2.4",
"hexo-server": "^0.1.2"

}
}
scaffolds
模版 文件夹。当您新建文章时,Hexo 会根据 scaffold 来建立文件。

source
资源文件夹是存放用户资源的地方。除 posts 文件夹之外,开头命名为 (下划线)的文件 / 文件夹和隐藏的文件将会被忽略。Markdown 和 HTML 文件会被解析并放到 public 文件夹,而其他文件会被拷贝过去。

themes
主题 文件夹。Hexo 会根据主题来生成静态页面。

本地查看效果

继续执行以下命令,成功后可登录localhost:4000查看效果

1
$ hexo server
Hexo常用简写命令

1
2
3
4
hexo n #生成文章,或者source\_posts手动编辑
hexo s #本地发布预览效果
hexo g #生成public静态文件
hexo d #部署之前预先生成静态文件
部署静态网页到GitHub

Hexo 提供了快速方便的一键部署功能,让您只需一条命令就能将网站部署到服务器上。

1
$ hexo deploy
在开始之前,您必须先在 _config.yml 中修改参数,一个正确的部署配置中至少要有 type 参数,例如:

1
2
deploy:
type: git
发布到git上需要安装 hexo-deployer-git 插件。

1
$ npm install hexo-deployer-git --save
修改配置。

1
2
3
4
5
deploy:
type: git
repo:
branch: [branch]
message: [message]
参数 描述
repo 库(Repository)地址
branch 分支名称。如果您使用的是 GitHub 或 GitCafe 的话,程序会尝试自动检测。
message 自定义提交信息 (默认为 Site updated: {{ now("YYYY-MM-DD HH:mm:ss") }})
配置完之后,运行命令 hexo d ,就能够将public里的文件发布到github。
现在就可以去查看网站的效果啦!
http://oyjt.github.io/

参考资料:

创建GitHub技术博客全攻略
Hexo官方文档
使用GitHub和Hexo搭建免费静态Blog



编译时间为:2016.10.12
环境如下:

操作系统:Linux Mint 18 Cinnamon 64-bit
Cinnamon版本:3.0.7
Linux 内核:4.4.14-040414-generic

步骤如下:

报错:

error GNU libiconv not in use but included iconv.h is from libiconv 


编译的时候碰到一个常见的错误,但是却在一个陌生的地方爆出来:

gconvert.c:55:2: error: #error GNU libiconv not in use but included iconv.h is from libiconv

google 了一下资料还挺多,总之就是没搜到 OpenWRT 相关的,于是各种想法都有。后来才发现确实是自己不注意被绕进去了。其实依旧是用很常规的手段解决,

cd /home/lellansin/OpenWRT/svn/trunk/build_dir/host/pkg-config-0.28/glib
./configure --enable-iconv=no --with-libiconv=gnu
make
cd /home/lellansin/OpenWRT/svn/trunk/
make # 继续编译 OpenWRT

开始一下没绕过来,因为在 trunk 目录下没有 configure 文件。纠结了半天,还试过删除自带的 iconv 等等各种黑操作,最后想,这 gconvert.o 编译不出来。咱去下载一个编译成功后拷贝过来就是。想到这里才突然意识到 OpenWRT 里面应该是有源码的,然后找过去果然找到了 glib 的 configure。

总结:以后编译大一点项目报错,第一时间先跑去看报错子项的 configure

今天去麦德龙购物,回来开机失败:
系统是:Linux Mint 18
之前关机正常,提示错误如下:

/etc/mdm/Xsession:Begining session setup...
/etc/mdm/Xsession:29:/home/duuge/.profile:[[:not found
/etc/mdm/Xsession:173:/etc/mdm/Xsession:grep not found
/etc/mdm/Xsession:Executing cinnamon-session-cinnamon cinnamon failed,will try to run x-terminal-emulator
/etc/mdm/Xsession:205:exec:x-terminal-emulator not found

截图如下2图:
图1:
IMG_20160926_231600.jpg
图2:
IMG_20160926_231609.jpg

解决方法:

1、尝试重启进入kde模式未果(因为设置了简体中文语言,所以命令提示符下都是乱码);
2、用Linux Mint 18的U盘系统安装优盘启动笔记本电脑,然后找到最后我的印象中最后一次对.profile的操作,用#井号禁用里面的配置项,重启电脑,成功解决!


环境:Linux Mint 18+Nvidia driver

在Android Studio 2.2中启动AVD报错:

Cannot launch AVD in emulator. 
Output: libGL error: driver pointer missing libGL 
error: failed to load driver: nouveau libGL 
error: unable to load driver: swrast_dri.so libGL 
error: failed to load driver: swrast X 
Error of failed request:  GLXBadContext


http://stackoverflow.com/questions/36189393/android-studio-avd-error-launching找到一个不算解决的解决办法:
https://gist.github.com/NickGeek/1e125d7ca6aeff2d4e0e3ac2399bc14c的avd_selection.py文件放到/home/duuge/Android/Sdk/tools目录下(具体按你自己的安卓的sdk目录而定),然后启动命令行并切到这个目录下运行命令python avd_selection.py:

duuge@linuxmint ~/Android/Sdk/tools $ python avd_selection.py

可临时解决。
随文附上avd_selection.py文件的压缩包。

avd_selection.py.tar.gz

参考:https://wiki.dolibarr.org/index.php/Zh_Translator_documentation

基于Linux Mint 18

DolibarrQQ群原创:206239089 (简体中文翻译交流)

1.安装transifex-client:提示没安装但最新版本是0.12的而apt-get install的是0.10这个版本不能用有问题的。于是继续下面步骤。

2.安装python pip:

sudo apt-get install python-pip

3.安装setuptools:

sudo pip install setuptools

4.安装transifex-client:

sudo pip install transifex-client

sudo easy_install install transifex-client

5.执行下面命令:

tx -d pull -l zh_CN

报错,提示:

duuge@Latitude-E6410 ~/github/dolibarr-tx $ tx -d pull -l zh_CNPath to tx is /home/duuge/github/dolibarr-tx.
Config file is /home/duuge/github/dolibarr-tx/.tx/config
.transifexrc file is at /home/duuge/github/dolibarr-tx
.transifexrc file is at /home/duuge
/home/duuge/.transifexrc not found.
Handling resource dolibarr.accountancy
Language mapping is: Flipdict({'sw': 'sw_SW', 'sr@latin': 'sr_RS', 'uz': 'uz_UZ'})
URL data are: {'project': 'dolibarr', 'host': 'https://www.transifex.com', 'resource': 'accountancy'}
No user credentials found for host https://www.transifex.com. Edit ~/.transifexrc and add the appropriate info in there.
Exception: No user credentials found for host https://www.transifex.com. Edit ~/.transifexrc and add the appropriate info in there.

看到:Edit ~/.transifexrc这文件没配置好。好吧用命令tx init初始化一下就解决。

tx init

会提示输入你在transifex网站的账号和密码。
完了之后继续 执行

补全一下.tx文件夹下的config配置文件(有点长)文件在github的dolibarr源代码的.tx文件夹下:
右键另存为千万别直接点击:https://github.com/Dolibarr/dolibarr/blob/develop/.tx/config

[main]
host = https://www.transifex.com
lang_map = uz: uz_UZ, sw: sw_SW, sr@latin: sr_RS
 
[dolibarr.accountancy]
file_filter = htdocs/langs/<lang>/accountancy.lang
source_file = htdocs/langs/en_US/accountancy.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.admin]
file_filter = htdocs/langs/<lang>/admin.lang
source_file = htdocs/langs/en_US/admin.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.agenda]
file_filter = htdocs/langs/<lang>/agenda.lang
source_file = htdocs/langs/en_US/agenda.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.banks]
file_filter = htdocs/langs/<lang>/banks.lang
source_file = htdocs/langs/en_US/banks.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.bills]
file_filter = htdocs/langs/<lang>/bills.lang
source_file = htdocs/langs/en_US/bills.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.bookmarks]
file_filter = htdocs/langs/<lang>/bookmarks.lang
source_file = htdocs/langs/en_US/bookmarks.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.boxes]
file_filter = htdocs/langs/<lang>/boxes.lang
source_file = htdocs/langs/en_US/boxes.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.cashdesk]
file_filter = htdocs/langs/<lang>/cashdesk.lang
source_file = htdocs/langs/en_US/cashdesk.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.categories]
file_filter = htdocs/langs/<lang>/categories.lang
source_file = htdocs/langs/en_US/categories.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.commercial]
file_filter = htdocs/langs/<lang>/commercial.lang
source_file = htdocs/langs/en_US/commercial.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.companies]
file_filter = htdocs/langs/<lang>/companies.lang
source_file = htdocs/langs/en_US/companies.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.compta]
file_filter = htdocs/langs/<lang>/compta.lang
source_file = htdocs/langs/en_US/compta.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.contracts]
file_filter = htdocs/langs/<lang>/contracts.lang
source_file = htdocs/langs/en_US/contracts.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.cron]
file_filter = htdocs/langs/<lang>/cron.lang
source_file = htdocs/langs/en_US/cron.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.deliveries]
file_filter = htdocs/langs/<lang>/deliveries.lang
source_file = htdocs/langs/en_US/deliveries.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.dict]
file_filter = htdocs/langs/<lang>/dict.lang
source_file = htdocs/langs/en_US/dict.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.donations]
file_filter = htdocs/langs/<lang>/donations.lang
source_file = htdocs/langs/en_US/donations.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.ecm]
file_filter = htdocs/langs/<lang>/ecm.lang
source_file = htdocs/langs/en_US/ecm.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.errors]
file_filter = htdocs/langs/<lang>/errors.lang
source_file = htdocs/langs/en_US/errors.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.exports]
file_filter = htdocs/langs/<lang>/exports.lang
source_file = htdocs/langs/en_US/exports.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.externalsite]
file_filter = htdocs/langs/<lang>/externalsite.lang
source_file = htdocs/langs/en_US/externalsite.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.ftp]
file_filter = htdocs/langs/<lang>/ftp.lang
source_file = htdocs/langs/en_US/ftp.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.help]
file_filter = htdocs/langs/<lang>/help.lang
source_file = htdocs/langs/en_US/help.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.holiday]
file_filter = htdocs/langs/<lang>/holiday.lang
source_file = htdocs/langs/en_US/holiday.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.hrm]
file_filter = htdocs/langs/<lang>/hrm.lang
source_file = htdocs/langs/en_US/hrm.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.incoterm]
file_filter = htdocs/langs/<lang>/incoterm.lang
source_file = htdocs/langs/en_US/incoterm.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.install]
file_filter = htdocs/langs/<lang>/install.lang
source_file = htdocs/langs/en_US/install.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.interventions]
file_filter = htdocs/langs/<lang>/interventions.lang
source_file = htdocs/langs/en_US/interventions.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.languages-not-res]
file_filter = htdocs/langs/<lang>/languages.lang
source_file = htdocs/langs/en_US/languages.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.ldap]
file_filter = htdocs/langs/<lang>/ldap.lang
source_file = htdocs/langs/en_US/ldap.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.link]
file_filter = htdocs/langs/<lang>/link.lang
source_file = htdocs/langs/en_US/link.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.loan]
file_filter = htdocs/langs/<lang>/loan.lang
source_file = htdocs/langs/en_US/loan.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.mailmanspip]
file_filter = htdocs/langs/<lang>/mailmanspip.lang
source_file = htdocs/langs/en_US/mailmanspip.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.mails]
file_filter = htdocs/langs/<lang>/mails.lang
source_file = htdocs/langs/en_US/mails.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.main]
file_filter = htdocs/langs/<lang>/main.lang
source_file = htdocs/langs/en_US/main.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.margins]
file_filter = htdocs/langs/<lang>/margins.lang
source_file = htdocs/langs/en_US/margins.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.members]
file_filter = htdocs/langs/<lang>/members.lang
source_file = htdocs/langs/en_US/members.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.oauth]
file_filter = htdocs/langs/<lang>/oauth.lang
source_file = htdocs/langs/en_US/oauth.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.opensurvey]
file_filter = htdocs/langs/<lang>/opensurvey.lang
source_file = htdocs/langs/en_US/opensurvey.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.orders]
file_filter = htdocs/langs/<lang>/orders.lang
source_file = htdocs/langs/en_US/orders.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.other]
file_filter = htdocs/langs/<lang>/other.lang
source_file = htdocs/langs/en_US/other.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.paybox]
file_filter = htdocs/langs/<lang>/paybox.lang
source_file = htdocs/langs/en_US/paybox.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.paypal]
file_filter = htdocs/langs/<lang>/paypal.lang
source_file = htdocs/langs/en_US/paypal.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.printing]
file_filter = htdocs/langs/<lang>/printing.lang
source_file = htdocs/langs/en_US/printing.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.productbatch]
file_filter = htdocs/langs/<lang>/productbatch.lang
source_file = htdocs/langs/en_US/productbatch.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.products]
file_filter = htdocs/langs/<lang>/products.lang
source_file = htdocs/langs/en_US/products.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.projects]
file_filter = htdocs/langs/<lang>/projects.lang
source_file = htdocs/langs/en_US/projects.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.propal]
file_filter = htdocs/langs/<lang>/propal.lang
source_file = htdocs/langs/en_US/propal.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.receiptprinter]
file_filter = htdocs/langs/<lang>/receiptprinter.lang
source_file = htdocs/langs/en_US/receiptprinter.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.resource]
file_filter = htdocs/langs/<lang>/resource.lang
source_file = htdocs/langs/en_US/resource.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.salaries]
file_filter = htdocs/langs/<lang>/salaries.lang
source_file = htdocs/langs/en_US/salaries.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.sendings]
file_filter = htdocs/langs/<lang>/sendings.lang
source_file = htdocs/langs/en_US/sendings.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.sms]
file_filter = htdocs/langs/<lang>/sms.lang
source_file = htdocs/langs/en_US/sms.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.stocks]
file_filter = htdocs/langs/<lang>/stocks.lang
source_file = htdocs/langs/en_US/stocks.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.suppliers]
file_filter = htdocs/langs/<lang>/suppliers.lang
source_file = htdocs/langs/en_US/suppliers.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.supplier_proposal]
file_filter = htdocs/langs/<lang>/supplier_proposal.lang
source_file = htdocs/langs/en_US/supplier_proposal.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.trips]
file_filter = htdocs/langs/<lang>/trips.lang
source_file = htdocs/langs/en_US/trips.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.users]
file_filter = htdocs/langs/<lang>/users.lang
source_file = htdocs/langs/en_US/users.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.withdrawals]
file_filter = htdocs/langs/<lang>/withdrawals.lang
source_file = htdocs/langs/en_US/withdrawals.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.website]
file_filter = htdocs/langs/<lang>/website.lang
source_file = htdocs/langs/en_US/website.lang
source_lang = en_US
type = MOZILLAPROPERTIES
 
[dolibarr.workflow]
file_filter = htdocs/langs/<lang>/workflow.lang
source_file = htdocs/langs/en_US/workflow.lang
source_lang = en_US
type = MOZILLAPROPERTIES

6.执行下面命令:

tx -d pull -l zh_CN

成功!

duuge@Latitude-E6410 ~/github/dolibarr-tx $ tx -d pull -l zh_CN
Path to tx is /home/duuge/github/dolibarr-tx.
Config file is /home/duuge/github/dolibarr-tx/.tx/config
.transifexrc file is at /home/duuge/github/dolibarr-tx
.transifexrc file is at /home/duuge
Handling resource dolibarr.accountancy
Language mapping is: Flipdict({'sw': 'sw_SW', 'sr@latin': 'sr_RS', 'uz': 'uz_UZ'})
URL data are: {'project': 'dolibarr', 'host': 'https://www.transifex.com', 'resource': 'accountancy'}
Statistics response is {
    "ar_SA": {
        "reviewed_percentage": "70%", 
        "completed": "70%", 
        "untranslated_words": 229, 
        "last_commiter": "eldy", 
        "reviewed": 97, 
        "translated_entities": 97, 
        "translated_words": 503, 
        "last_update": "2016-08-30 23:05:18", 
        "untranslated_entities": 40
    }, 
    "en": {
        "reviewed_percentage": "0%", 
        "completed": "100%", 
        "untranslated_words": 0, 
        "last_commiter": "eldy", 
        "reviewed": 0, 
        "translated_entities": 137, 
        "translated_words": 732, 
        "last_update": "2016-08-30 23:05:19", 
        "untranslated_entities": 0
    }, 

......
......
......

Adding to new translations: set([])
Pulling languages for: set(['zh_CN'])
Pulling translations for resource dolibarr.workflow (source: htdocs/langs/en_US/workflow.lang)
Using file htdocs/langs/zh_CN/workflow.lang
Remote time is 1473712800.0 and local 1473713460.0
Local is newer than remote for lang zh_CN
Skipping 'zh_CN' translation (file: htdocs/langs/zh_CN/workflow.lang).
Done.
duuge@duuge-Latitude-E6410 ~/github/dolibarr-tx $ 

'tools.jar' seems to be not in studio classpath.
please ensure JAVA_HOME points to JDK rether than JRE.

解决办法:

解决办法:到http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
下载JDK得到jdk-8u101-linux-x64.tar.gz,解压

tar xzvf jdk-8u101-linux-x64.tar.gz

解压为jdk文件夹,然后

sudo mv jdk /usr/lib/jvm

(如果还没有jvm文件夹则mkdir /usr/lib/jvm/创建一个文件夹解决)。

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk/bin/java 1
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk/bin/javac 1
sudo update-alternatives --install /usr/bin/javaws javaws /usr/lib/jvm/jdk/bin/javaws 1
sudo update-alternatives --config java
sudo update-alternatives --config javaws

OK完成了,测试一下看看java是否安装成功:查java版本号出来是java8的就行:

java -version

返回:

java -version
java version "1.8.0_101"
Java(TM) SE Runtime Environment (build 1.8.0_101-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode)