由于项目需要最近从 Mac 切到了 windows 平台。说实话 7000 多能用到带 3050 独显的笔记本,不得不说还是有点香的。如果能跑 rails 当然就更香了,于是开整。
网络上大多都是借助 WSL 实现 windows 上的 rails 开发,可是我要用 android 的虚拟机与 wsl2 有冲突,所以只能使用 jruby 了。
已经很多年没有关注过 jruby 了,真是士别三日,当刮目相待啊,如今的 jruby 已经羽翼丰满了,对 rails 的支持自然也很到位,而且借助 Java 虚拟机与 JIT 貌似性能也很霸道。不过我只是要一个 windows 的开发环境,性能暂且与我不相干直接开始踩坑。
这没啥可说的,java 去下载 openJDK11,配置 JAVA_HOME 和 Path 那些网上一大堆教程,不多说了。jruby 也去官网下载,当前最新的稳定版是 9.3.x。
安装好了就可以用 ruby 了啦~。powershell+jruby,看起来不好看,但是 jruby 毕竟是 ruby,看到提示符,高兴啊。在 windows 上用 jruby 的话执行命令是:
jruby -S <cmd>
下面是一个对照表:
来吧直接替换 gem source 源,安装 rails,创建 rails 项目:
jruby -S rails new xxx -B -d jdbcmysql
终于坑来了
gem 'sass-rails', '>= 6'
gem 'web-console'
装不上,报错了,无法完成编译。。。Google 吧,好在并不复杂,参考了这里,需要安装 CRuby with DevKit 并配置一下 Path:
PATH=C:\jruby-9.2.18.0\bin;C:\Ruby26-x64\msys64\mingw64\bin;C:\Ruby26-x64\msys64\usr\bin;___other_stuff
从新
jruby -S bundle install
这货居然搞定了。
mysql-server 下载 zip 版,简单配置如下:
#初始化,这个会在output中显示生成的root密码,要记一下,后面再改成自己想要的
mysqld --initialize --user=root --console
#安装系统服务,要用管理员权限运行
mysqld install
# 启动停止服务
net start/stop mysql
# 改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456 or WhatUWant';
IDE 我用的 rubymine,好用,可以在 IDE 里面直接运行 rails server 和调试 rails。