原内容已经过时,请移步到最新文档 ——《Solo 从设计到实现》。
- Solo
-
开发指南
8 引用 • 760 回帖
-
Java
3187 引用 • 8213 回帖
Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。
相关帖子
-
yanxingangsun • • 2
- 建议[Solo 开发指南]上的中文说明改为用码云下载(中文说明主要面向国内用户,国内用户码云下载更快),如下:
git clone --recurse-submodules https://gitee.com/b3logos/solo.git
英文说明(如果有的话)通过 github 下载:
git clone --recurse-submodules https://github.com/b3log/solo.git
- 另外“skins(皮肤)”在码云上没有项目分支,所以也是到 github 上下载的,速度也慢,希望能改进一下,在码云上也能下载,谢谢。
[root@VM_0_11_centos ~]# git clone --recurse-submodules https://gitee.com/b3logos/solo.git Cloning into 'solo'... remote: Enumerating objects: 44272, done. remote: Counting objects: 100% (44272/44272), done. remote: Compressing objects: 100% (13923/13923), done. remote: Total 44272 (delta 24766), reused 44214 (delta 24708) Receiving objects: 100% (44272/44272), 88.66 MiB | 2.85 MiB/s, done. Resolving deltas: 100% (24766/24766), done. Submodule 'src/main/webapp/skins' (https://github.com/b3log/solo-skins) registered for path 'src/main/webapp/skins' Cloning into 'src/main/webapp/skins'... remote: Enumerating objects: 1193, done. remote: Counting objects: 100% (1193/1193), done. remote: Compressing objects: 100% (732/732), done. remote: Total 11743 (delta 845), reused 767 (delta 460), pack-reused 10550 Receiving objects: 100% (11743/11743), 23.59 MiB | 256.00 KiB/s, done. Resolving deltas: 100% (8803/8803), done. Submodule path 'src/main/webapp/skins': checked out 'ca0de62bddd9e3bb8732e46b4239001d7f238303' [root@VM_0_11_centos ~]#
以上是本人下载时的命令打印信息。
-
按照上述步骤,git clone 后用
mvn jetty:run
运行报错,错误信息应该是说连接 mysql 失败,难道要先装 mysql 吗?不是说集成了 mysql 在项目发布的文件里吗?第一次尝试 solo,谁能帮忙解答一下?谢谢。打印信息如下:[INFO ]-[2019-06-23 10:38:10]-[com.zaxxer.hikari.HikariDataSource:110]: HikariPool-1 - Starting... [ERROR]-[2019-06-23 10:38:11]-[com.zaxxer.hikari.pool.HikariPool:574]: HikariPool-1 - Exception during pool initialization. com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. at com.mysql.cj.jdbc.exceptions.SQLError.createCommunicationsException(SQLError.java:174) ... at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:347) Caused by: com.mysql.cj.exceptions.CJCommunicationsException: Communications link failure The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ... 72 more Caused by: java.net.ConnectException: Connection refused (Connection refused) at java.base/java.net.PlainSocketImpl.socketConnect(Native Method) at java.base/java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:399) at java.base/java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:242) at java.base/java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:224) at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:403) at java.base/java.net.Socket.connect(Socket.java:591) at com.mysql.cj.protocol.StandardSocketFactory.connect(StandardSocketFactory.java:155) at com.mysql.cj.protocol.a.NativeSocketConnection.connect(NativeSocketConnection.java:65) ... 75 more [ERROR]-[2019-06-23 10:38:11]-[org.b3log.solo.service.InitService:186]: Check tables failed, please make sure database existed and database configuration [jdbc.*] in local.props is correct [msg=Communications link failure The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.]
1 回复 - 其他回帖
-
安装并启动了 mysql 后,接下来修改
root@localhost
密码为12345
mysql 在安装后会创建一个 root@locahost 账户(这是 mysql 本地登录的账号。MySQL8.0 为远程连接
root@%
和本地连接root@locahost
提供了不同的密码验证方式。),并且把本地连接初始的密码放到了/var/log/mysqld.log 文件中;用cat /var/log/mysqld.log | grep password
命令查看初始密码。[root@VM_0_11_centos solo]# cat /var/log/mysqld.log | grep password 2019-06-23T03:35:57.941668Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: n=Ti,P4?J(uE
注:上面
n=Ti,P4?J(uE
就是初始密码。使用初始密码登录 mysql
[root@VM_0_11_centos solo]# mysql -uroot -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 12 Server version: 8.0.16 MySQL Community Server - GPL Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql 的 root 用户的验证方式变了。从下面命令结果可以看出 root 的用户的加密方式为 caching_sha2_passoword,而 navicat 连接所用的方式为 native_password。
mysql> use mysql Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql> select host, user, plugin from user; +-----------+------------------+-----------------------+ | host | user | plugin | +-----------+------------------+-----------------------+ | % | root | mysql_native_password | | localhost | mysql.infoschema | caching_sha2_password | | localhost | mysql.session | caching_sha2_password | | localhost | mysql.sys | caching_sha2_password | | localhost | root | caching_sha2_password | +-----------+------------------+-----------------------+ 5 rows in set (0.00 sec)
下面开始修改密码操作,但是直接用 alter 命令改还不行,因为 123456 密太简单,不满足密码策略,查看密码策略命令如下:
mysql> SHOW VARIABLES LIKE 'validate%'; +--------------------------------------+--------+ | Variable_name | Value | +--------------------------------------+--------+ | validate_password.check_user_name | ON | | validate_password.dictionary_file | | | validate_password.length | 8 | | validate_password.mixed_case_count | 1 | | validate_password.number_count | 1 | | validate_password.policy | MEDIUM | | validate_password.special_char_count | 1 | +--------------------------------------+--------+ 7 rows in set (0.01 sec)
需要把 validate_password.check_user_name 改为 OFF,validate_password.length 改为 1,validate_password.policy 改为 LOW。命令如下:
mysql> set global validate_password.check_user_name=0; Query OK, 0 rows affected (0.00 sec) mysql> set global validate_password.length=1; Query OK, 0 rows affected (0.00 sec) mysql> set global validate_password.policy=0; Query OK, 0 rows affected (0.00 sec) mysql> SHOW VARIABLES LIKE 'validate%'; +--------------------------------------+-------+ | Variable_name | Value | +--------------------------------------+-------+ | validate_password.check_user_name | OFF | | validate_password.dictionary_file | | | validate_password.length | 4 | | validate_password.mixed_case_count | 1 | | validate_password.number_count | 1 | | validate_password.policy | LOW | | validate_password.special_char_count | 1 | +--------------------------------------+-------+ 7 rows in set (0.00 sec)
然后才可以开始改密码了:(本地和远程的都改为 123456)
mysql> alter user'root'@'localhost' IDENTIFIED BY '123456'; Query OK, 0 rows affected (0.01 sec) mysql> ALTER USER 'root'@'%' IDENTIFIED by '123456'; Query OK, 0 rows affected (0.01 sec) mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec)
-
org.b3log.latke.service.ServiceException: Initailize Solo error: A json object to persist to repository[name=vseu__option] does not contain a key[optionValue]
mysql 数据库初始化报了这个错误,这是什么问题?1 回复 - 查看全部回帖