初次使用JHipster

安装不难,Yarn,Yeoman 等都装上,按官方文档都装好。

然后运行 yo jhipster 来根据向导生成程序。用的是git shell,不知为什么,互动的过程键盘方向键输入异常,而且界面上字符显示还出现了叠加,所以一路回车,大致按照默认值生成了程序。

(此处特别友情提醒,后来经测试查明,jHipster的生成向导在Git Shell下运作不正常,无法进行菜单选择,在Windows Power Shell下显示正常,其它类型的终端暂未测试)

然后,运行yarn start启动前端,界面能正常显示。运行mnvw启动服务器端的时候出现了问题:

1,一开始是解压缩maven压缩文件的报错,网上搜了一下,说把对应的user/.m2/下面的相关文件夹删除,果然好了;

2,然后看报错信息,mysql连不上,应该是向导生成的默认配置跟实际服务器不一致,这个需要修改一下配置,修改src\main\resources\config\application-dev.yml里面的对应节点即可;

3,报zookeeper连不上,下载zookeeper了之后,在本机安装,按照官方文档,新建了zoo.cfg文件,然后运行bin\zkServer.cmd start启动,结果报错:

2017-04-30 20:48:44,016 [myid:] - WARN  [main:QuorumPeerMain@113] - Either no config or no quorum defined in config, running  in standalone mode
2017-04-30 20:48:44,135 [myid:] - ERROR [main:ZooKeeperServerMain@55] - Invalid arguments, exiting abnormally
java.lang.NumberFormatException: For input string: "C:\zookeeper-3.4.10\bin\..\conf\zoo.cfg"
        at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
        at java.lang.Integer.parseInt(Integer.java:580)
        at java.lang.Integer.parseInt(Integer.java:615)
        at org.apache.zookeeper.server.ServerConfig.parse(ServerConfig.java:59)
        at org.apache.zookeeper.server.ZooKeeperServerMain.initializeAndRun(ZooKeeperServerMain.java:84)
        at org.apache.zookeeper.server.ZooKeeperServerMain.main(ZooKeeperServerMain.java:53)
        at org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:116)
        at org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:78)

花了半小时才搞清楚,原来Windows下,用zkServer.cmd启动服务,不需要加start参数就可以了。。。

然后。。。zookeeper是运行起来了,但是启动jhipster服务器还是报错,如下:

org.springframework.context.ApplicationContextException: Failed to start bean 'outputBindingLifecycle'; nested exception is org.I0Itec.zkclient.exception.ZkNoNodeException: org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode for /brokers/ids

夜深了,留下问题暂未解决。

第二天重新创建了程序,在生成向导中先没有选择服务注册和发现,这样避开使用zookeeper的问题。先把jhipster跑起来,以后再慢慢解决连接zookeeper报错的问题。