- 浏览: 3048174 次
- 性别:
- 来自: 海外
文章分类
- 全部博客 (430)
- Programming Languages (23)
- Compiler (20)
- Virtual Machine (57)
- Garbage Collection (4)
- HotSpot VM (26)
- Mono (2)
- SSCLI Rotor (1)
- Harmony (0)
- DLR (19)
- Ruby (28)
- C# (38)
- F# (3)
- Haskell (0)
- Scheme (1)
- Regular Expression (5)
- Python (4)
- ECMAScript (2)
- JavaScript (18)
- ActionScript (7)
- Squirrel (2)
- C (6)
- C++ (10)
- D (2)
- .NET (13)
- Java (86)
- Scala (1)
- Groovy (3)
- Optimization (6)
- Data Structure and Algorithm (3)
- Books (4)
- WPF (1)
- Game Engines (7)
- 吉里吉里 (12)
- UML (1)
- Reverse Engineering (11)
- NSIS (4)
- Utilities (3)
- Design Patterns (1)
- Visual Studio (9)
- Windows 7 (3)
- x86 Assembler (1)
- Android (2)
- School Assignment / Test (6)
- Anti-virus (1)
- REST (1)
- Profiling (1)
- misc (39)
- NetOA (12)
- rant (6)
- anime (5)
- Links (12)
- CLR (7)
- GC (1)
- OpenJDK (2)
- JVM (4)
- KVM (0)
- Rhino (1)
- LINQ (2)
- JScript (0)
- Nashorn (0)
- Dalvik (1)
- DTrace (0)
- LLVM (0)
- MSIL (0)
最新评论
-
mldxs:
虽然很多还是看不懂,写的很好!
虚拟机随谈(一):解释器,树遍历解释器,基于栈与基于寄存器,大杂烩 -
HanyuKing:
Java的多维数组 -
funnyone:
Java 8的default method与method resolution -
ljs_nogard:
Xamarin workbook - .Net Core 中不 ...
LINQ的恶搞…… -
txm119161336:
allocatestlye1 顺序为 // Fields o ...
最近做的两次Java/JVM分享的概要
之前用Mechanize写了点小脚本,不过有些网页跳转啊什么的明明可以并行做,Ruby 1.9之前却会因为green thread不是原生线程而无法真的并行,比较郁闷。想换到Ruby 1.9.1用NeverBlock来看看情况会不会好一些,不过却遇到了问题。
从Ruby-mswin32抓得Ruby 1.9.1的stable release。运行机器是我那装着Windows 7 Beta的老本。
刚开始运行gem的时候总是会抱怨找不到zlib.dll,只好从前面装的Ruby 1.8.6的bin目录把zlib1.dll拷贝过去,重命名为zlib.dll。然后gem install基本上都顺利。
但是require 'mechanize'的时候却得到了segfault……
然后再试了试,发现require 'hpricot'也会在一个.so文件发生segfault。或许是Ruby 1.9.1与Windows 7 Beta的兼容性问题……
不知道这个问题跟之前别人遇到的在Windows 7 Beta上运行git遇到segfault的问题是不是一样的。是的话或许用Vista的msvcrt放在Ruby 1.9.1的bin目录里就能解决问题。回头试试看……
================================================================
啊,在Windows 7 Beta上用JRuby 1.1.6/JRE 1.6.0u11来运行mechanize也是不行。看起来是JRuby 1.1.6与Nokogiri相性不好……
night_stalker 写道刚才 1.9 上试了 mechanize,用上 libxml2 和 libxslt 的头文件和 lib,编译过去鸟。
我之前遇到segfault的是nokogiri而不是mechanize吧?你有顺带编译nokogiri么?有的话拜托传我.so吧 T T
嗯,我是在 cygwin 编译的 ,两个 lib 安装很舒服。后来也爬了些网页,没出问题。
但是 cygwin 外面的话…… libxml2 还好说,至少给了 msvc 的编译方式,但 libxslt 只看见 rpm 包的下载……
我之前遇到segfault的是nokogiri而不是mechanize吧?你有顺带编译nokogiri么?有的话拜托传我.so吧 T T
是哪部分一样?Ruby 1.9.1还是JRuby 1.1.6还是Win7?Win7的话请试试看把Vista下的Windows\System32里的C运行时文件复制到Win7这边的Ruby的bin目录里试试。如果是Ruby 1.9.1跟Mechanize的兼容性问题的话我还不清楚……
我在Win7上遇到的问题暂时没找到解决的办法。最近在忙些别的事,Ruby这边有点放下了……呃,尽快看看能不能找到办法解决吧 T T
从Ruby-mswin32抓得Ruby 1.9.1的stable release。运行机器是我那装着Windows 7 Beta的老本。
刚开始运行gem的时候总是会抱怨找不到zlib.dll,只好从前面装的Ruby 1.8.6的bin目录把zlib1.dll拷贝过去,重命名为zlib.dll。然后gem install基本上都顺利。
但是require 'mechanize'的时候却得到了segfault……
E:\ruby191\bin>gem install mechanize Successfully installed nokogiri-1.1.1-x86-mswin32-60 Successfully installed mechanize-0.9.0 2 gems installed Installing ri documentation for nokogiri-1.1.1-x86-mswin32-60... Installing ri documentation for mechanize-0.9.0... Updating class cache with 1261 classes... Installing RDoc documentation for nokogiri-1.1.1-x86-mswin32-60... Installing RDoc documentation for mechanize-0.9.0... E:\ruby191\bin>gem install rubyscript2exe Successfully installed rubyscript2exe-0.5.3 1 gem installed Updating class cache with 1361 classes... E:\ruby191\bin>gem install hpricot Successfully installed hpricot-0.6.164-x86-mswin32 1 gem installed Installing ri documentation for hpricot-0.6.164-x86-mswin32... Installing RDoc documentation for hpricot-0.6.164-x86-mswin32... E:\ruby191\bin>irb irb(main):001:0> require 'uri' => true irb(main):002:0> require 'mechanize' E:/ruby191/lib/ruby/gems/1.9.1/gems/nokogiri-1.1.1-x86-mswin32-60/ext/nokogiri/native.so: [BUG] Segmentation fault ruby 1.9.1p0 (2009-01-30 revision 21907) [i386-mswin32] -- control frame ---------- c:0034 p:-8950286 s:0112 b:0112 l:000111 d:000111 TOP c:0033 p:---- s:0110 b:0110 l:000109 d:000109 CFUNC :require c:0032 p:0222 s:0106 b:0106 l:000105 d:000105 TOP E:/ruby191/lib/ruby/gems/1.9.1/gems/nokogiri-1.1.1-x86-mswin32-60/lib/nokogiri.rb:15 c:0031 p:---- s:0104 b:0104 l:000103 d:000103 FINISH c:0030 p:---- s:0102 b:0102 l:000101 d:000101 CFUNC :require c:0029 p:0107 s:0098 b:0098 l:000097 d:000097 TOP E:/ruby191/lib/ruby/gems/1.9.1/gems/mechanize-0.9.0/lib/www/mechanize.rb:9 c:0028 p:---- s:0096 b:0096 l:000095 d:000095 FINISH c:0027 p:---- s:0094 b:0094 l:000093 d:000093 CFUNC :require c:0026 p:0011 s:0090 b:0090 l:000089 d:000089 TOP E:/ruby191/lib/ruby/gems/1.9.1/gems/mechanize-0.9.0/lib/mechanize.rb:7 c:0025 p:---- s:0088 b:0088 l:000087 d:000087 FINISH c:0024 p:---- s:0086 b:0086 l:000085 d:000085 CFUNC :require c:0023 p:0011 s:0082 b:0082 l:0020ec d:000d3c EVAL (irb):2 c:0022 p:---- s:0080 b:0080 l:000079 d:000079 FINISH c:0021 p:---- s:0078 b:0078 l:000077 d:000077 CFUNC :eval c:0020 p:0027 s:0071 b:0071 l:000070 d:000070 METHOD E:/ruby191/lib/ruby/1.9.1/irb/workspace.rb:80 c:0019 p:0031 s:0064 b:0063 l:000062 d:000062 METHOD E:/ruby191/lib/ruby/1.9.1/irb/context.rb:218 c:0018 p:0030 s:0058 b:0058 l:0018b4 d:000057 BLOCK E:/ruby191/lib/ruby/1.9.1/irb.rb:149 c:0017 p:0037 s:0050 b:0050 l:000049 d:000049 METHOD E:/ruby191/lib/ruby/1.9.1/irb.rb:263 c:0016 p:0011 s:0045 b:0045 l:0018b4 d:000044 BLOCK E:/ruby191/lib/ruby/1.9.1/irb.rb:146 c:0015 p:0132 s:0041 b:0041 l:000024 d:000040 BLOCK E:/ruby191/lib/ruby/1.9.1/irb/ruby-lex.rb:244 c:0014 p:---- s:0038 b:0038 l:000037 d:000037 FINISH c:0013 p:---- s:0036 b:0036 l:000035 d:000035 CFUNC :loop c:0012 p:0009 s:0033 b:0033 l:000024 d:000032 BLOCK E:/ruby191/lib/ruby/1.9.1/irb/ruby-lex.rb:230 c:0011 p:---- s:0031 b:0031 l:000030 d:000030 FINISH c:0010 p:---- s:0029 b:0029 l:000028 d:000028 CFUNC :catch c:0009 p:0023 s:0025 b:0025 l:000024 d:000024 METHOD E:/ruby191/lib/ruby/1.9.1/irb/ruby-lex.rb:229 c:0008 p:0042 s:0022 b:0022 l:0018b4 d:0018b4 METHOD E:/ruby191/lib/ruby/1.9.1/irb.rb:145 c:0007 p:0011 s:0019 b:0019 l:001824 d:000018 BLOCK E:/ruby191/lib/ruby/1.9.1/irb.rb:69 c:0006 p:---- s:0017 b:0017 l:000016 d:000016 FINISH c:0005 p:---- s:0015 b:0015 l:000014 d:000014 CFUNC :catch c:0004 p:0172 s:0011 b:0011 l:001824 d:001824 METHOD E:/ruby191/lib/ruby/1.9.1/irb.rb:68 c:0003 p:0039 s:0006 b:0006 l:0000f4 d:00248c EVAL E:/ruby191/bin/irb.bat:20 c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH c:0001 p:0000 s:0002 b:0002 l:0000f4 d:0000f4 TOP ----------------------------- Ruby level backtrace information----------------------------------------- E:/ruby191/lib/ruby/gems/1.9.1/gems/nokogiri-1.1.1-x86-mswin32-60/lib/nokogiri.rb:15:in `require' E:/ruby191/lib/ruby/gems/1.9.1/gems/nokogiri-1.1.1-x86-mswin32-60/lib/nokogiri.rb:15:in `<top (required)>' E:/ruby191/lib/ruby/gems/1.9.1/gems/mechanize-0.9.0/lib/www/mechanize.rb:9:in `require' E:/ruby191/lib/ruby/gems/1.9.1/gems/mechanize-0.9.0/lib/www/mechanize.rb:9:in `<top (required)>' E:/ruby191/lib/ruby/gems/1.9.1/gems/mechanize-0.9.0/lib/mechanize.rb:7:in `require' E:/ruby191/lib/ruby/gems/1.9.1/gems/mechanize-0.9.0/lib/mechanize.rb:7:in `<top(required)>' (irb):2:in `require' (irb):2:in `irb_binding' E:/ruby191/lib/ruby/1.9.1/irb/workspace.rb:80:in `eval' E:/ruby191/lib/ruby/1.9.1/irb/workspace.rb:80:in `evaluate' E:/ruby191/lib/ruby/1.9.1/irb/context.rb:218:in `evaluate' E:/ruby191/lib/ruby/1.9.1/irb.rb:149:in `block (2 levels) in eval_input' E:/ruby191/lib/ruby/1.9.1/irb.rb:263:in `signal_status' E:/ruby191/lib/ruby/1.9.1/irb.rb:146:in `block in eval_input' E:/ruby191/lib/ruby/1.9.1/irb/ruby-lex.rb:244:in `block (2 levels) in each_top_level_statement' E:/ruby191/lib/ruby/1.9.1/irb/ruby-lex.rb:230:in `loop' E:/ruby191/lib/ruby/1.9.1/irb/ruby-lex.rb:230:in `block in each_top_level_statement' E:/ruby191/lib/ruby/1.9.1/irb/ruby-lex.rb:229:in `catch' E:/ruby191/lib/ruby/1.9.1/irb/ruby-lex.rb:229:in `each_top_level_statement' E:/ruby191/lib/ruby/1.9.1/irb.rb:145:in `eval_input' E:/ruby191/lib/ruby/1.9.1/irb.rb:69:in `block in start' E:/ruby191/lib/ruby/1.9.1/irb.rb:68:in `catch' E:/ruby191/lib/ruby/1.9.1/irb.rb:68:in `start' E:/ruby191/bin/irb.bat:20:in `<main>' [NOTE] You may encounter a bug of Ruby interpreter. Bug reports are welcome. For details: http://www.ruby-lang.org/bugreport.html This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information.
然后再试了试,发现require 'hpricot'也会在一个.so文件发生segfault。或许是Ruby 1.9.1与Windows 7 Beta的兼容性问题……
不知道这个问题跟之前别人遇到的在Windows 7 Beta上运行git遇到segfault的问题是不是一样的。是的话或许用Vista的msvcrt放在Ruby 1.9.1的bin目录里就能解决问题。回头试试看……
================================================================
啊,在Windows 7 Beta上用JRuby 1.1.6/JRE 1.6.0u11来运行mechanize也是不行。看起来是JRuby 1.1.6与Nokogiri相性不好……
irb(main):017:0> page = agent.get 'http://www.google.com/' NoMethodError: undefined method `read_memory' for Nokogiri::HTML::Document:Class from E:/jruby-1.1.6/lib/ruby/gems/1.8/gems/nokogiri-1.1.1-java/lib/nokogiri/html.rb:36:in `parse' from E:/jruby-1.1.6/lib/ruby/gems/1.8/gems/mechanize-0.9.0/lib/www/mechanize/page.rb:46:in `parser' from E:/jruby-1.1.6/lib/ruby/gems/1.8/gems/mechanize-0.9.0/lib/www/mechanize/page.rb:105:in `meta' from E:/jruby-1.1.6/lib/ruby/gems/1.8/gems/mechanize-0.9.0/lib/www/mechanize.rb:499:in `fetch_page' from E:/jruby-1.1.6/lib/ruby/gems/1.8/gems/mechanize-0.9.0/lib/www/mechanize.rb:224:in `get' from (irb):18
评论
10 楼
RednaxelaFX
2009-05-20
嗯……所以我才一直懒得自己编译nokogiri的 TvT
而且我也不太喜欢进Cygwin……好吧我回头也用Cygwin试试
而且我也不太喜欢进Cygwin……好吧我回头也用Cygwin试试
9 楼
night_stalker
2009-05-20
RednaxelaFX 写道
night_stalker 写道刚才 1.9 上试了 mechanize,用上 libxml2 和 libxslt 的头文件和 lib,编译过去鸟。
我之前遇到segfault的是nokogiri而不是mechanize吧?你有顺带编译nokogiri么?有的话拜托传我.so吧 T T
嗯,我是在 cygwin 编译的 ,两个 lib 安装很舒服。后来也爬了些网页,没出问题。
但是 cygwin 外面的话…… libxml2 还好说,至少给了 msvc 的编译方式,但 libxslt 只看见 rpm 包的下载……
8 楼
RednaxelaFX
2009-05-20
night_stalker 写道
刚才 1.9 上试了 mechanize,用上 libxml2 和 libxslt 的头文件和 lib,编译过去鸟。
我之前遇到segfault的是nokogiri而不是mechanize吧?你有顺带编译nokogiri么?有的话拜托传我.so吧 T T
7 楼
night_stalker
2009-05-20
刚才 1.9 上试了 mechanize,用上 libxml2 和 libxslt 的头文件和 lib,编译过去鸟。
6 楼
RednaxelaFX
2009-04-17
话说刚才在同学那边做实验,用了个折中的办法来在JRuby上用Mechanize。
老的Mechanize还是用Hpricot的,而0.6.x系列的Hpricot有Java版,所以两者都换回老一些的版本就能凑合用。
刚才在同学那边用的是:
Mechanize 0.8.5
Hpricot 0.6.161-Java
在JRuby 1.2.0里稍微试了下,都能行 T T
老的Mechanize还是用Hpricot的,而0.6.x系列的Hpricot有Java版,所以两者都换回老一些的版本就能凑合用。
刚才在同学那边用的是:
Mechanize 0.8.5
Hpricot 0.6.161-Java
在JRuby 1.2.0里稍微试了下,都能行 T T
5 楼
oCameLo
2009-04-09
检查一下native.so等文件链的是哪个版本的Ruby?在1.9里require了1.8的so,就会出Segmentation fault。
4 楼
RednaxelaFX
2009-03-04
呃……看来只有等了。在Ruby的Issue tracking system上的这个bug被分类为third party issue了 T T
3 楼
idol
2009-03-02
Ruby 1.9.1跟Mechanize的兼容性问题
2 楼
RednaxelaFX
2009-02-27
idol 写道
碰到同样的问题,有解决方案么
是哪部分一样?Ruby 1.9.1还是JRuby 1.1.6还是Win7?Win7的话请试试看把Vista下的Windows\System32里的C运行时文件复制到Win7这边的Ruby的bin目录里试试。如果是Ruby 1.9.1跟Mechanize的兼容性问题的话我还不清楚……
我在Win7上遇到的问题暂时没找到解决的办法。最近在忙些别的事,Ruby这边有点放下了……呃,尽快看看能不能找到办法解决吧 T T
1 楼
idol
2009-02-27
碰到同样的问题,有解决方案么
发表评论
-
字符串的一般封装方式的内存布局 (0): 拿在手上的是什么
2013-11-04 18:22 21489(Disclaimer:未经许可请 ... -
字符串的一般封装方式的内存布局
2013-11-01 12:55 0(Disclaimer:未经许可请 ... -
RubyConf notes
2011-11-08 19:10 0symmetric coroutine Fiber#trans ... -
ShanghaiOnRails第八次线下活动——你不需要知道的Ruby实现
2010-11-12 15:39 2841上个月底正好赶上参加了ShanghaiOnRails 第八次线 ... -
JRuby的运行模式
2010-11-01 11:21 0// 老的JRuby还是用org.jruby.evaluato ... -
你不需要知道的Ruby草稿
2010-10-27 11:25 0一些Ruby实现 Ruby 1.8 树遍历解释 Ruby 1 ... -
Ruby里的fiber/coroutine例子
2010-01-26 18:33 0Ruby 1.9开始支持fiber。与“fiber”一词的一般 ... -
JRuby使用技巧收集
2009-12-28 09:35 0java.lang.Thread.new { puts &qu ... -
特殊类型的eigenclass
2009-12-17 03:39 0Fixnum的实例没有eigenclass true、fals ... -
奇怪的参数
2009-12-08 02:25 0默认参数与闭包的组合 真正的问题不是只是默认参数看起来很诡异, ... -
MacRuby的执行模式
2009-12-07 07:41 0mailing-list macruby-devel http ... -
Rubinius的执行模型
2009-12-05 15:22 0Rubinius wants to help YOU make ... -
Ruby 1.8和1.9中String#hash的实现
2009-11-22 18:23 01.8 string.c int rb_str_hash(s ... -
To囧:拿你来测测Watir...
2009-11-21 22:38 3441iaimstar 写道@RednaxelaFX 你最近ruby ... -
[标题党] MagLev中GC类的真相……
2009-11-21 14:46 0注意到本文的标题:我是说“GC类”的真相,不是说GC的真相哦~ ... -
小试rubyzip的一个脚本
2009-11-17 20:42 3455呼,今天开始3天都是新人培训,总算可以抽点时间发一帖。 现在在 ... -
爬一下Google和百度看口碑对它们做的SEO效果如何
2009-11-09 00:27 0#!/usr/bin/env ruby require ... -
把Mechanize的html_parser改回到Hpricot
2009-11-08 14:45 3115记得我最初开始用Nokogir ... -
使用新的RubyInstaller
2009-11-07 02:37 0Hpricot的安装需要编译,需要devkit -
Ruby metaprogramming tech notes
2009-09-28 15:39 0class Builder def self.build ...
相关推荐
ruby 1.9.1 的下载地址是:ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p0.tar.gz (windows上在http://www.ruby-lang.org/en/downloads/ 下载二进制的文件)另外,目前Rails 2.2还无法在ruby 1.9.1上面正常...
标题“【工作点滴】用VS 2010 编译 Ruby 1.9.1”涉及的是在Visual Studio 2010环境下编译Ruby编程语言的1.9.1版本。这是一个关于软件开发过程中的实践操作,尤其是针对Windows平台上的C/C++开发。在Windows上编译...
总的来说,这个特定的Ruby-FCGI源码包是为了解决在Ruby 1.9.1上的兼容性问题,让你能够在该版本的Ruby环境中顺利地开发和运行FastCGI应用。通过深入理解FastCGI协议、Ruby C扩展以及Ruby 1.9.1的特性,你可以充分...
7. **案例研究**:通过实际项目示例展示如何在 Ruby 1.9.1 中应用新特性,解决实际问题。 8. **升级指南**:对于从旧版本升级到 1.9.1 的开发者,提供注意事项和迁移策略。 阅读这份文档和 PDF,不仅可以帮助你...
下面,我们将详细讨论如何通过二进制zip包在Windows上安装Ruby 1.9。 首先,你需要下载Ruby 1.9的Windows二进制zip包,可以从Ruby官方网站或者第三方可靠的下载站点获取。这个zip包通常包含了Ruby解释器以及必要的...
"ruby-1.9.1-p0-i386-mswin32.zip" 是一个针对Windows操作系统编译的Ruby编程环境的压缩包,发布于2009年6月20日,当时是Ruby 1.9.1版本的最新版。 Ruby 1.9.1是一个重要的版本更新,引入了许多改进和新特性,包括...
- 配置编译选项:在编译前需确保`/usr/local/ruby-1.9.1`文件夹有适当的权限。执行命令`../configure --prefix=/usr/local/ruby-1.9.1` **步骤三:编译与安装** - 编译源码:执行`make` - 安装编译后的文件:`make...
《jQuery 1.9.1:深入理解与应用》 jQuery,这个JavaScript库,自2006年发布以来,以其简洁的API和强大的功能,迅速成为开发者们首选的前端工具之一。本篇文章将深入探讨jQuery 1.9.1版本,包括其核心特性、性能...
总之,这个“ruby-1.9.1-p0-i386-mswin32.rar”压缩包提供了一个完整的Ruby环境,适合在Windows 32位系统上进行开发工作,特别是那些需要处理JSON数据的项目。随着Ruby的不断发展,它继续吸引着全球各地的开发者,...
在“最新版windows consul_1.9.1_windows_amd64.zip”中包含的“consul.exe”文件,是Consul的可执行程序,用于在Windows操作系统上启动和运行Consul服务。安装和运行Consul通常涉及以下步骤: 1. 解压下载的zip...
jquery-1.9.1 压缩版+非压缩版,另附压缩版引用地址: 百度压缩版引用地址: <script src="http://libs.baidu.com/jquery/1.9.1/jquery.min.js"></script> 微软压缩版引用地址: <script src="http://ajax.aspnetcdn....
jquery.min.js 1.9.1 兼容IE6
golang 1.9.1 Windows安装包。
在Windows上编写Ruby脚本,可以使用任何文本编辑器,如Notepad++或Visual Studio Code,并保存文件为`.rb`扩展名。然后,你可以通过在命令行中输入`ruby [filename.rb]`来运行你的脚本。 在压缩包中的"说明_Readme....
ant的配法: 1。...SET ANT_HOME=C:\apache-ant-1.9.1 //注意是Ant的安装目录,不是bin子目录 SET PATH=%PATH%;%ANT_HOME%\bin; 在cmd模式下输入 ant -version回车,看到输出说明即表示配置成功。
在“neo4j-enterprise-1.9.1-windows.zip”这个压缩包中,我们拥有了Neo4j企业版1.9.1在Windows平台上的完整安装包。官方提供确保了其可靠性和稳定性,是开发和部署基于图形数据应用程序的理想选择。 图形数据库是...
1. 安装Ruby解释器:在Windows上,你可以从Ruby官网下载适合你系统的Ruby安装包,安装过程中可以选择添加到系统路径,这样就可以在命令行中直接运行`ruby`和`gem`命令。 2. 更新Gem:安装Ruby后,应确保Gem是最新的...
protoc-gen-grpc-java-1.9.1-windows-x86_64.exe
1. `gitblit.war`:这是Gitblit的Web应用程序,可以部署到支持Java Servlet容器(如Tomcat)上运行。 2. `gitblit.jar`:Gitblit的可执行JAR文件,可以直接运行在Java环境中,无需Web服务器。 3. `conf`目录:包含...