安装 JHipster
安装方式
我们提供了 6 种安装 JHipster 的方式。如有不确定选择哪种,请选择第二种“使用 NPM 本地安装”:
- JHipster Online 是一个最简单的方式来使用 JHipster 生成应用,甚至不需要安装本地 JHipster。
- “使用 NPM 本地安装” 是典型的安装方式。所有需要的组件都会安装在你的机器上,设置稍微有点复杂,但是是大部分人的选择。如果不确定选择哪种安装方式,选择这个就是了。
- “使用 Yarn 本地安装” 基本类似 “使用 NPM 本地安装”,区别在于使用 Yarn 而不是 NPM
- “使用包管理器安装” 只支持 Mac OS X 和 Windows。如果你已经在使用包管理器的话,这个是比较简单的安装方式,请注意该功能目前还是 BETA 阶段。
- 基于 Vagrant “development box”, 所有工具都安装在一个 Ubuntu 虚拟机中。
- 基于 “Docker” 容器,提供更轻量的的 JHipster 环境。
JHipster Online (为那些希望简单上手 JHipster 的用户)
JHipster Online 使你能方便的生成 JHipster 应用,且不需要安装 JHipster。
目的适用于那些第一次尝试 JHipster 的用户,或者简单看一下 JHipster 能力的用户。
虽然使用上简单,但这个并非 “完整的 JHipster 体验”, 一旦你的应用创建好了你还是需要根据后面章节(使用 NPM 本地安装)的大部分步骤,就如你也需要 Java (来运行你的程序) 和 NPM (来管理你的前端)。
我们希望在为了给 JHipster Online 提供更多的功能。
使用 NPM 本地安装(推荐方式)
快速设置
- 安装 Java 8, Oracle 官网.
- 安装 Node.js, Node.js 官网 (必须选择 LTS 64位 版本,非 LTS 版本不支持)
- 安装 NPM,NPM 和 Node.js 是一起安装好了,但是你还需要更新一下 NPM 本身:
npm install -g npm
- 如果你打算将来使用 JHipster Marketplace, 还需要安装 Yeoman:
npm install -g yo
- 安装 JHipster:
npm install -g generator-jhipster
一旦 JHipster 安装好了,下一步就可以开始:创建应用
可选安装
- 安装 Java 编译工具。
- 无论你使用的是 Maven 还是 Gradle,你都不需要安装任何额外的工具,因为 JHipster 自动安装了 Maven Wrapper 或 Gradle Wrapper。
- 如果你不希望使用这些 wrapper,可以去官网下载独立安装 Maven 或 Gradle。
- 安装 Git git-scm.com。如果你是 Git 新手,我们也推荐你使用工具 SourceTree。
- JHipster 会尝试提交你的项目到 Git。
- JHipster 升级工具 需要用到 Git。
额外的信息
JHipster 使用 Yeoman 来作为代码生成器。 需要更多关于 Yeoman 的信息、帮助、使用技巧,请看一下 the Yeoman “getting starting” guide,在 提交 Bug 也请阅读 Yarn documentation。
配置信息会存储在文件 .yo-rc.json
里, 强烈 不推荐在用户主目录中创建 JHipster 项目。如果这样做了,你就不能再在子目录中创建项目了。要解决这个问题,只需要删除 .yo-rc.json
文件。
使用 Yarn 本地安装 (类似 NPM)
快速设置
安装方式和使用 NPM 安装基本一致,除了这两处:
- 第三步不需要升级 NPM,而是安装 Yarn: Yarn 官网
- 把所有
npm install -g
改成yarn global add
,例如:- 安装 Yeoman:
yarn global add yo
- 安装 JHipster:
yarn global add generator-jhipster
- 安装 Yeoman:
问题
说明:如果你在使用 Yarn 的时候遇到问题,务必确保你的环境变量 path 里有 $HOME/.config/yarn/global/node_modules/.bin
这个目录。
在 Mac 或 Linux 上:export PATH="$PATH:`yarn global bin`:$HOME/.config/yarn/global/node_modules/.bin"
使用包管理器安装
请注意目前是 BETA 功能! 如果你选择这种安装方式,请给我们您的 bug report 或反馈 @java_hipster。
在 Mac OS X 上用 Homebrew 安装
JHipster 提供了一个 Homebrew 包,在 http://formulae.brew.sh/formula/jhipster。
安装 JHipster (以及 Node 和 NPM),键入:
brew install jhipster
这个包的新版本会在每一个 JHipster 发布后自动创建,但是需要 Homebrew 团队一点时间来验证 - 所以如果你拿到的一个较老的 JHipster 版本,请耐心或者使用上面的 NPM 来安装。
Installation with Chocolatey on Windows
JHipster 提供了一个 Chocolatey 包,在 https://chocolatey.org/packages/jhipster。
安装 JHipster (以及 Node,NPM,Yeoman,Java,Git),键入:
choco install jhipster
这个包的新版本会在每一个 JHipster 发布后自动创建,但是需要 Chocolatey 团队一点时间来验证 - 所以如果你拿到的一个较老的 JHipster 版本,请耐心或者使用上面的 NPM 来安装。
Vagrant box 安装
JHipster development box 提供了一个完整的开发 JHipster 工具的虚拟机环境。
这是个设置和运行 JHipstert 的便捷方法。
除了 JHipster,这个虚拟机中还包含了许多其他开发工具,诸如 Docker,所以可以说是开发工作环境已万事俱备。
请查看文档 JHipster development box page 获取安装和设置信息。
Docker 安装 (限高级用户使用)
请注意:这里描述的 Docker 镜像是指在容器中运行 JHipster 的 generator 环境。这和 Docker 和 Docker Compose 章节中描述的不是一个含义,那是指在容器中运行你的应用
信息
JHipster 定义了一个 Dockerfile,由此提供 Docker 镜像。
它提供了一个自动编译好的镜像在:https://hub.docker.com/r/jhipster/jhipster/ 上。
该镜像将让你能在容器中运行 JHipster。
前提
根据你的操作系统镜像不同的设置:
- Linux: Linux 是原生支持 Docker 的。你只需要根据 Docker 官网上的指引安装 Docker。
- Mac & Windows: 安装 Docker Toolbox 来获取 Docker。
由于 Docker 生成的文件是保存在你的共享目录中的,在你关闭 Docker 容器后它们不会被删除。如果你不希望 Docker 每次都下载 Maven 或 NPM 依赖文件,你可以提交他们的状态或者挂载一个卷。
DOCKER_HOST
参数是不一样的。在 Linux 上,这就是 localhost。
在 Mac/Windows 上,你需要用命令获取 IP 地址:docker-machine ip default
在 Linux 上,如果你的用户不是 docker 组,你需要以 root 用户来运行 docker
命令。所以推荐将你的用户加入到 docker 组,就可以以非 root 用户来运行 docker 命令了。参考这里的步骤:http://askubuntu.com/a/477554。
Linux/Mac Windows 使用说明 (使用 Docker Toolbox)
拉取镜像
拉取最新的 JHipster 镜像:
docker image pull jhipster/jhipster
拉取最新的开发版 JHipster 镜像:
docker image pull jhipster/jhipster:master
查看所有的版本 这里
运行容器
在你的 home 目录中创建一个 “jhipster” 目录:
mkdir ~/jhipster
运行 Docker 镜像,加上下面这些选项:
- Docker 的 “/home/jhipster/app” 目录和本地的 “~/jhipster” 目录共享
- 转发 Docker 的端口 (Java 应用:8080,BrowserSync:9000, BrowserSync UI:3001)
docker container run --name jhipster -v ~/jhipster:/home/jhipster/app -v ~/.m2:/home/jhipster/.m2 -p 8080:8080 -p 9000:9000 -p 3001:3001 -d -t jhipster/jhipster
检查容器是否正常运行
检查容器是否正常运行:docker container ps
:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4ae16c0539a3 jhipster/jhipster "tail -f /home/jhipst" 4 seconds ago Up 3 seconds 0.0.0.0:9000-3001->9000-3001/tcp, 0.0.0.0:8080->8080/tcp jhipster
一些常规操作
- 停止容器:
docker container stop jhipster
- 启动容器:
docker container start jhipster
如果需要更新 Docker 镜像 (重新编译的或者从 Docker hub 重新拉取的),最好将现有容器移除,再重新运行。先停止容器,删除,然后重新运行:
docker container stop jhipster
docker container rm jhipster
docker image pull jhipster/jhipster
docker container run --name jhipster -v ~/jhipster:/home/jhipster/app -v ~/.m2:/home/jhipster/.m2 -p 8080:8080 -p 9000:9000 -p 3001:3001 -d -t jhipster/jhipster
访问容器
最简单的进入容器的命令是:
docker container exec -it <container_name> bash
复制粘贴的请注意将上面的容器名改为 jhipster
:
docker container exec -it jhipster bash
你会以 “jhipster” 用户登入。
如果你希望以 “root” 用户登入,由于 sudo
命令在 Ubuntu Xenial 是不可用的,你需要这样:
docker container exec -it --user root jhipster bash
第一个项目
进入容器的 /home/jhipster/app 目录,开始构建你的第一个项目:
cd /home/jhipster/app
jhipster
jhipster --yarn
来使用 Yarn 而不是 NPM。
一旦你的应用创建好了,你就可以正常运行 gulp/bower/maven 等相关命令,比如:
./mvnw
恭喜你! 你已经成功在 Docker 里运行了一个 JHipster 应用!
在你的主机上,你可以:
- 在
http://DOCKER_HOST:8080
地址上访问你的应用 - 在共享文件夹中获取项目的所有文件
jhipster/jhipster
镜像内是没有安装 Docker 的。
所以你不能:
- 运行 docker-compose
- 创建 Docker 镜像 (Maven 的 goal:
jib:dockerBuild
或 Gradle task:jibDockerBuild
)
jib:build
or Gradle task: jibBuild
). But you will need to setup credentials to the docker registry as a pre-requisite of building the app. See the [Jib plugin configuration documentations](https://github.com/GoogleContainerTools/jib/tree/master/jib-maven-plugin#configuration) for more details.