win10 安装mingw ruby rails
原文可以参考
https://ruby-china.org/topics/17581
在window10 安装ruby rails
https://rubyinstaller.org/downloads/下载 ruby版本,我是用的是最新版本2.5.2
首先安装ruby版本 一步步安装 最后 不要快安装完成时不要勾选 ridk install选项,因为从命令行下载太慢,单独下载安装
2.安装编译环境
步骤:
去 http://www.mys2.org/ 下载 http://repo.msys2.org/distrib/x86_64/msys2-x86_64-20161025.exe
然后一步步安装
安装完成后 关闭即可。
3.打开命令行 运行 ridk install
输入数字3 剩下的不用管了,自己下载mingw源码包然后生成环境。
tip:可以测试mingw环境 cmd->ridk enable->gcc -v
4.接下来解决sqlite3/sqlite_native.so问题(github中sqlite3-ruby有编译介绍)
修正:首先需要下载sqlite3源代码,cmd->ridk enable->cd sqlite3目录->bash configure->make ->make install安装mingw版本 然后进行下面步骤
5.第1步骤 打开命令行 输入 gem install sqlite3
第2步骤 进入 sqlite3 gem路径
cd C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32
命令行输入 ridk enable( 开启mingw编译环境)
然后
ruby setup.rb config
ruby setup.rb setup
ruby setup.rb install
然后就可以了
测试 irb > require "sqlite3" =>true
安装 rails
gem install rails
rails new blog
cd blog
配置 rails bundle选择从https://gems.ruby-china.org/
sudo bundle config mirror.https://rubygems.org/ https://gems.ruby-china.org/
rails s
打开浏览器 输入 localhost:3000/
至此结束。
我拷贝了ruby官方api文档 放置在https://iwetuan.shop 目前网站空闲
sqlite3 github
https://github.com/sparklemotion/sq
粘贴我的过程
C:\Users\haitun\Desktop\wechat\df>rails s
Could not find rake-12.3.1 in any of the sources
Run `bundle install` to install missing gems.
C:\Users\haitun\Desktop\wechat\df>rails install
Could not find rake-12.3.1 in any of the sources
Run `bundle install` to install missing gems.
C:\Users\haitun\Desktop\wechat\df>bundle install
Fetching gem metadata from https://gems.ruby-china.org/..........
Fetching rake 12.3.1
Installing rake 12.3.1
Using concurrent-ruby 1.0.5
Using i18n 0.9.5
Fetching minitest 5.11.3
Installing minitest 5.11.3
Using thread_safe 0.3.6
Using tzinfo 1.2.5
Using activesupport 5.1.5
Using builder 3.2.3
Using erubi 1.7.1
Using mini_portile2 2.3.0
Using nokogiri 1.8.2 (x64-mingw32)
Using rails-dom-testing 2.0.3
Using crass 1.0.3
Using loofah 2.2.2
Using rails-html-sanitizer 1.0.4
Using actionview 5.1.5
Using rack 2.0.4
Using rack-test 0.8.3
Using actionpack 5.1.5
Using nio4r 2.3.0
Using websocket-extensions 0.1.3
Using websocket-driver 0.6.5
Using actioncable 5.1.5
Using globalid 0.4.1
Using activejob 5.1.5
Using mini_mime 1.0.0
Using mail 2.7.0
Using actionmailer 5.1.5
Using activemodel 5.1.5
Using arel 8.0.0
Using activerecord 5.1.5
Fetching public_suffix 3.0.2
Installing public_suffix 3.0.2
Fetching addressable 2.5.2
Installing addressable 2.5.2
Fetching bindex 0.5.0
Installing bindex 0.5.0 with native extensions
Using bundler 1.16.1
Fetching byebug 10.0.1
Installing byebug 10.0.1 with native extensions
Fetching xpath 3.0.0
Installing xpath 3.0.0
Fetching capybara 2.18.0
Installing capybara 2.18.0
Fetching ffi 1.9.23 (x64-mingw32)
Installing ffi 1.9.23 (x64-mingw32)
Fetching childprocess 0.9.0
Installing childprocess 0.9.0
Fetching coffee-script-source 1.12.2
Installing coffee-script-source 1.12.2
Fetching execjs 2.7.0
Installing execjs 2.7.0
Fetching coffee-script 2.4.1
Installing coffee-script 2.4.1
Using method_source 0.9.0
Using thor 0.20.0
Using railties 5.1.5
Fetching coffee-rails 4.2.2
Installing coffee-rails 4.2.2
Fetching multi_json 1.13.1
Installing multi_json 1.13.1
Fetching jbuilder 2.7.0
Installing jbuilder 2.7.0
Fetching puma 3.11.3
Installing puma 3.11.3 with native extensions
Using sprockets 3.7.1
Using sprockets-rails 3.2.1
Using rails 5.1.5
Fetching rb-fsevent 0.10.3
Installing rb-fsevent 0.10.3
Fetching rb-inotify 0.9.10
Installing rb-inotify 0.9.10
Fetching rubyzip 1.2.1
Installing rubyzip 1.2.1
Fetching sass-listen 4.0.0
Installing sass-listen 4.0.0
Fetching sass 3.5.6
Installing sass 3.5.6
Fetching tilt 2.0.8
Installing tilt 2.0.8
Fetching sass-rails 5.0.7
Installing sass-rails 5.0.7
Fetching selenium-webdriver 3.11.0
Installing selenium-webdriver 3.11.0
Fetching sqlite3 1.3.13 (x64-mingw32)
Installing sqlite3 1.3.13 (x64-mingw32)
Fetching turbolinks-source 5.1.0
Installing turbolinks-source 5.1.0
Fetching turbolinks 5.1.0
Installing turbolinks 5.1.0
Fetching tzinfo-data 1.2018.3
Installing tzinfo-data 1.2018.3
Fetching uglifier 4.1.8
Installing uglifier 4.1.8
Fetching web-console 3.5.1
Installing web-console 3.5.1
Bundle complete! 13 Gemfile dependencies, 67 gems now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
C:\Users\haitun\Desktop\wechat\df>rails s
Traceback (most recent call last):
22: from bin/rails:4:in `<main>'
21: from bin/rails:4:in `require'
20: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/railties-5.1.5/lib/rails/commands.rb:16:in `<top (required)>'
19: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/railties-5.1.5/lib/rails/command.rb:44:in `invoke'
18: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/railties-5.1.5/lib/rails/command/base.rb:63:in `perform'
17: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/thor-0.20.0/lib/thor.rb:387:in `dispatch'
16: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/thor-0.20.0/lib/thor/invocation.rb:126:in `invoke_command'
15: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/thor-0.20.0/lib/thor/command.rb:27:in `run'
14: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/railties-5.1.5/lib/rails/commands/server/server_command.rb:130:in `perform'
13: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/railties-5.1.5/lib/rails/commands/server/server_command.rb:130:in `tap'
12: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/railties-5.1.5/lib/rails/commands/server/server_command.rb:133:in `block in perform'
11: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/railties-5.1.5/lib/rails/commands/server/server_command.rb:133:in `require'
10: from C:/Users/haitun/Desktop/wechat/df/config/application.rb:7:in `<top (required)>'
9: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/bundler-1.16.1/lib/bundler.rb:114:in `require'
8: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/bundler-1.16.1/lib/bundler/runtime.rb:65:in `require'
7: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/bundler-1.16.1/lib/bundler/runtime.rb:65:in `each'
6: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/bundler-1.16.1/lib/bundler/runtime.rb:76:in `block in require'
5: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/bundler-1.16.1/lib/bundler/runtime.rb:76:in `each'
4: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/bundler-1.16.1/lib/bundler/runtime.rb:81:in `block (2 levels) in require'
3: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/bundler-1.16.1/lib/bundler/runtime.rb:81:in `require'
2: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/sqlite3-1.3.13-x64-mingw32/lib/sqlite3.rb:2:in `<top (required)>'
1: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/sqlite3-1.3.13-x64-mingw32/lib/sqlite3.rb:6:in `rescue in <top (required)>'
C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/sqlite3-1.3.13-x64-mingw32/lib/sqlite3.rb:6:in `require': cannot load such file -- sqlite3/sqlite3_native (LoadError)
C:\Users\haitun\Desktop\wechat\df>ls
'ls' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
C:\Users\haitun\Desktop\wechat\df>cd C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32
C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32>
C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32>
C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32>
C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32>
C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32>ruby setup.rb config
---> lib
---> lib/sqlite3
---> lib/sqlite3/2.0
<--- lib/sqlite3/2.0
---> lib/sqlite3/2.1
<--- lib/sqlite3/2.1
---> lib/sqlite3/2.2
<--- lib/sqlite3/2.2
---> lib/sqlite3/2.3
<--- lib/sqlite3/2.3
---> lib/sqlite3/2.4
<--- lib/sqlite3/2.4
<--- lib/sqlite3
<--- lib
---> ext
---> ext/sqlite3
C:/Ruby25-x64/bin/ruby C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/sqlite3-1.3.13-x64-mingw32/ext/sqlite3/extconf.rb
checking for sqlite3.h... *** C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/sqlite3-1.3.13-x64-mingw32/ext/sqlite3/extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers. Check the mkmf.log file for more details. You may
need configuration options.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/sqlite3-1.3.13-x64-mingw32/ext/sqlite3
--curdir
--ruby=C:/Ruby25-x64/bin/$(RUBY_BASE_NAME)
--with-sqlite3-config
--without-sqlite3-config
--with-pkg-config
--without-pkg-config
--with-sqlite3-dir
--without-sqlite3-dir
--with-sqlite3-include
--without-sqlite3-include=${sqlite3-dir}/include
--with-sqlite3-lib
--without-sqlite3-lib=${sqlite3-dir}/lib
Traceback (most recent call last):
11: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/sqlite3-1.3.13-x64-mingw32/ext/sqlite3/extconf.rb:50:in `<main>'
10: from C:/Ruby25-x64/lib/ruby/2.5.0/mkmf.rb:1149:in `find_header'
9: from C:/Ruby25-x64/lib/ruby/2.5.0/mkmf.rb:946:in `checking_for'
8: from C:/Ruby25-x64/lib/ruby/2.5.0/mkmf.rb:346:in `postpone'
7: from C:/Ruby25-x64/lib/ruby/2.5.0/mkmf.rb:320:in `open'
6: from C:/Ruby25-x64/lib/ruby/2.5.0/mkmf.rb:350:in `block in postpone'
5: from C:/Ruby25-x64/lib/ruby/2.5.0/mkmf.rb:320:in `open'
4: from C:/Ruby25-x64/lib/ruby/2.5.0/mkmf.rb:350:in `block (2 levels) in postpone'
3: from C:/Ruby25-x64/lib/ruby/2.5.0/mkmf.rb:947:in `block in checking_for'
2: from C:/Ruby25-x64/lib/ruby/2.5.0/mkmf.rb:1150:in `block in find_header'
1: from C:/Ruby25-x64/lib/ruby/2.5.0/mkmf.rb:590:in `try_cpp'
C:/Ruby25-x64/lib/ruby/2.5.0/mkmf.rb:456:in `try_do': The compiler failed to generate an executable file. (RuntimeError)
You have to install development tools first.
'system C:/Ruby25-x64/bin/ruby C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/sqlite3-1.3.13-x64-mingw32/ext/sqlite3/extconf.rb ' failed
Try 'ruby setup.rb --help' for detailed usage.
C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32>
C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32>ridk enable
C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32>set "RI_DEVKIT=C:\msys64"
C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32>set "MSYSTEM=MINGW64"
C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32>set "PKG_CONFIG_PATH=/mingw64/lib/pkgconfig:/mingw64/share/pkgconfig"
C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32>set "ACLOCAL_PATH=/mingw64/share/aclocal:/usr/share/aclocal"
C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32>set "MANPATH=/mingw64/share/man"
C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32>set "MINGW_PACKAGE_PREFIX=mingw-w64-x86_64"
C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32>set "LANG=zh_CN.UTF-8"
C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32>set "PATH=C:\Ruby25-x64\bin;C:\msys64\mingw64\bin;C:\msys64\usr\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files\Git\cmd;C:\Program Files\CMake\bin;C:\Program Files\PuTTY\;C:\Program Files\MySQL\MySQL Server 5.7\bin;C:\Go\bin;C:\Users\haitun\AppData\Local\Programs\Python\Python36;C:\Users\haitun\AppData\Local\Programs\Python\Python36\Scripts;C:\Ruby25-x64\bin;C:\Users\haitun\AppData\Local\Microsoft\WindowsApps"
C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32>ruby setup.rb config
---> lib
---> lib/sqlite3
---> lib/sqlite3/2.0
<--- lib/sqlite3/2.0
---> lib/sqlite3/2.1
<--- lib/sqlite3/2.1
---> lib/sqlite3/2.2
<--- lib/sqlite3/2.2
---> lib/sqlite3/2.3
<--- lib/sqlite3/2.3
---> lib/sqlite3/2.4
<--- lib/sqlite3/2.4
<--- lib/sqlite3
<--- lib
---> ext
---> ext/sqlite3
C:/Ruby25-x64/bin/ruby C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/sqlite3-1.3.13-x64-mingw32/ext/sqlite3/extconf.rb
checking for sqlite3.h... yes
checking for pthread_create() in -lpthread... yes
checking for sqlite3_libversion_number() in -lsqlite3... yes
checking for rb_proc_arity()... yes
checking for rb_integer_pack()... yes
checking for sqlite3_initialize()... yes
checking for sqlite3_backup_init()... yes
checking for sqlite3_column_database_name()... no
checking for sqlite3_enable_load_extension()... yes
checking for sqlite3_load_extension()... yes
checking for sqlite3_open_v2()... yes
checking for sqlite3_prepare_v2()... yes
checking for sqlite3_int64 in sqlite3.h... yes
checking for sqlite3_uint64 in sqlite3.h... yes
creating Makefile
<--- ext/sqlite3
<--- ext
C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32>ruby setup.rb setup
---> lib
---> lib/sqlite3
---> lib/sqlite3/2.0
<--- lib/sqlite3/2.0
---> lib/sqlite3/2.1
<--- lib/sqlite3/2.1
---> lib/sqlite3/2.2
<--- lib/sqlite3/2.2
---> lib/sqlite3/2.3
<--- lib/sqlite3/2.3
---> lib/sqlite3/2.4
<--- lib/sqlite3/2.4
<--- lib/sqlite3
<--- lib
---> ext
---> ext/sqlite3
make
generating sqlite3_native-x64-mingw32.def
compiling backup.c
compiling database.c
compiling exception.c
compiling sqlite3.c
compiling statement.c
linking shared-object sqlite3/sqlite3_native.so
<--- ext/sqlite3
<--- ext
C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32>ruby setup.rb install
---> lib
mkdir -p C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/
install sqlite3.rb C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/
---> lib/sqlite3
mkdir -p C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/sqlite3
install constants.rb C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/sqlite3
install database.rb C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/sqlite3
install errors.rb C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/sqlite3
install pragmas.rb C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/sqlite3
install resultset.rb C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/sqlite3
install statement.rb C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/sqlite3
install translator.rb C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/sqlite3
install value.rb C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/sqlite3
install version.rb C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/sqlite3
---> lib/sqlite3/2.0
mkdir -p C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/sqlite3/2.0
<--- lib/sqlite3/2.0
---> lib/sqlite3/2.1
mkdir -p C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/sqlite3/2.1
<--- lib/sqlite3/2.1
---> lib/sqlite3/2.2
mkdir -p C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/sqlite3/2.2
<--- lib/sqlite3/2.2
---> lib/sqlite3/2.3
mkdir -p C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/sqlite3/2.3
<--- lib/sqlite3/2.3
---> lib/sqlite3/2.4
mkdir -p C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/sqlite3/2.4
<--- lib/sqlite3/2.4
<--- lib/sqlite3
<--- lib
---> ext
---> ext/sqlite3
mkdir -p C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/x64-msvcrt/sqlite3
install sqlite3_native.so C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/x64-msvcrt/sqlite3
<--- ext/sqlite3
<--- ext
C:\Ruby25-x64\lib\ruby\gems\2.5.0\gems\sqlite3-1.3.13-x64-mingw32>
win10 安装mingw ruby rails的更多相关文章
- 转 CentOS下面安装RVM+ruby+Rails
CentOS6.2下面安装RVM+ruby+Rails (1)RVM官方网站应该是改版过一次, 使用 curl -L https://get.rvm.io | bash -s stable 下载并安装 ...
- 安装 Ruby, Rails 运行环境 常见的错误
安装部署ruby on rails 的环境时并不是想的那么顺利 这个是我遇到的问题及解决的方式 参考安装博客: (1) https://ruby-china.org/wiki/install_ruby ...
- Mac上安装与更新Ruby,Rails运行环境
Mac安装后就安装Xcode是个好主意,它将帮你安装好Unix环境需要的开发包,也可以独立安装command_line_tools_for_xcode 1.安装RVM RVM:Ruby Version ...
- Ruby(rails)win环境下安装
1.RubyInstaller 在RubyInstaller官网下载window版本安装,地址:http://rubyinstaller.org/downloads/ 执行安装程序,勾选Add Ru ...
- 如何快速正确的安装 Ruby, Rails 运行环境-b
对于新入门的开发者,如何安装 Ruby, Ruby Gems 和 Rails 的运行环境可能会是个问题,本页主要介绍如何用一条靠谱的路子快速安装 Ruby 开发环境.次安装方法同样适用于产品环境! 系 ...
- 怎样高速正确的安装 Ruby, Rails 执行环境
对于新入门的开发人员,怎样安装 Ruby, Ruby Gems 和 Rails 的执行环境可能会是个问题,本页主要介绍怎样用一条靠谱的路子高速安装 Ruby 开发环境. 次安装方法相同适用于产品环境! ...
- 如何快速正确的安装 Ruby, Rails 运行环境
如何快速正确的安装 Ruby, Rails 运行环境 https://ruby-china.org/wiki/install_ruby_guide 对于新入门的开发者,如何安装 Ruby, Ruby ...
- Mac 安装 Ruby, Rails 运行环境
对于新入门的开发者,如何安装 Ruby, Ruby Gems 和 Rails 的运行环境可能会是个问题,本页主要介绍如何用一条靠谱的路子快速安装 Ruby 开发环境. 次安装方法同样适用于产品环境! ...
- 安装 Ruby, Rails 运行环境
步骤1 - 安装 RVM RVM 是干什么的这里就不解释了,后面你将会慢慢搞明白. $ gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1 ...
随机推荐
- HDU5919:Sequence II
题面 Vjudge Sol 给一个数列,有m个询问,每次问数列[l,r]区间中所有数的第一次出现的位置的中位数是多少,强制在线 主席树 询问区间内不同的数的个数 树上二分找到那个中位数 # inclu ...
- luogu2402 奶牛隐藏
题目描述 在一个农场里有n块田地.某天下午,有一群牛在田地里吃草,他们分散在农场的诸多田地上,农场由m条无向的路连接,每条路有不同的长度. 突然,天降大雨,奶牛们非常混乱,想要快点去躲雨.已知每个田地 ...
- [HNOI2015]开店
如果没有年龄区间 画图发现ans=\(\sum_{i=1}^n dis_i + n * dis_u - 2 * \sum_{i=1}^{n} dis_{lca(i, u)}\) 对\(\sum_{i= ...
- .net core2.0半年的使用经验之前言
目录 前言 使用dapper做数据层调用 使用T4模板生成 使用缓存 使用swagger做接口文档(非restful) 使用identity做身份认证 使用jwt做身份认证 使用CORS跨域 调用we ...
- 微信公众号开发 VS2015本地调试
1.部署一个微信公众号服务在本地IIS: 2.下载一个ngrok 穿网工具,放到部署文件夹根目录: ngrok穿网 在部署路径下打开cmd,输入 ngrok http [端口号] 4.将映射的URL ...
- 托管ASP.NET Core应用程序到Windows服务中
由于公司程序前置Nginx反向代理,所以在Windows中部署过程中没有采用IIS托管.Net Core应用,一直采用控制台dotnet命令直接运行.但是测试过程中,发现程序内Session一直无法覆 ...
- Hashtable源码解析(JDK1.8)
package java.util; import java.io.*; import java.util.concurrent.ThreadLocalRandom; import java.util ...
- 笔记:I/O流-ZIP文档
ZIP文档以压缩格式存储了一个或多个文件,每个ZIP文档都有一个头,包含诸如每个文件名字和所使用的压缩方法等信息,在 Java 中可以使用 ZipInputStream 来读入ZIP 文档,getNe ...
- poj-1503-java大数相加
Description One of the first users of BIT's new supercomputer was Chip Diller. He extended his explo ...
- MyBatis-plus 代码生成器
1.添加pom文件依赖 <!-- Mybatis-Plus 自动生成实体类--> <dependency> <groupId>com.baomidou</gr ...