Java 开源博客 Solo 2.9.4 发布,新皮肤加数据库重构

本贴最后更新于 2258 天前,其中的信息可能已经水流花落

Solo 是一款一个命令就能搭建好的 Java 开源博客系统,如果你想开个独立博客,请一定不要错过!

imagepng

2.9.4 版本加入了一款新皮肤 nijigen,二次元萌娘控们值得一试。另外,这个版本我们做了一次数据库重构,从 2.9.3 升级前务必备份数据库后再升级!

案例

功能

  • Markdown / Emoji
  • 聚合分类 / 标签
  • 自定义导航(页面、链接)
  • 草稿夹
  • 评论/回复邮件提醒
  • 随机文章 / 相关文章 / 置顶 / 更新提醒
  • 自定义文章永久链接
  • 自定义站点 SEO 参数
  • 自定义公告 / 页脚
  • 多个签名档
  • 代码高亮 / 数学公式 / 流程图
  • 多皮肤,多端适配 / 社区皮肤
  • 多语言 / 国际化
  • 上传本地 / 七牛云
  • 友情链接管理
  • 多用户写作,团队博客
  • Hexo/Jekyll 导入
  • SQL / JSON / Markdown 导出
  • 插件系统
  • Atom / RSS 订阅
  • Sitemap
  • MetaWeblog API
  • CDN 静态资源分离

安装

  • 下载安装包
  • 解压后执行 java -cp "WEB-INF/lib/*;WEB-INF/classes" org.b3log.solo.Starter

从 2.9.3 升级只需将已有的配置拷贝覆盖即可,启动后会自动升级。升级前请备份数据库,以免出现意外!

文档

项目

2.9.4 变更记录

  • 12494 新皮肤 nijigen skin
  • 12486 Next 皮肤调整 enhancement
  • 12489 加强文章标签格式校验 enhancement
  • 12492 验证码改进 enhancement
  • 12495 skins 作为 git 子模块引入 development
  • 12507 删除 JDBC 连接池配置项 development
  • 12509 重构数据库 development
  • 12510 支持 MySQL 8 development
  • 12500 友情链接管理问题 bug

历史版本变更请浏览这里

  • Solo

    Solo 是一款小而美的开源博客系统,专为程序员设计。Solo 有着非常活跃的社区,可将文章作为帖子推送到社区,来自社区的回帖将作为博客评论进行联动(具体细节请浏览 B3log 构思 - 分布式社区网络)。

    这是一种全新的网络社区体验,让热爱记录和分享的你不再感到孤单!

    1434 引用 • 10054 回帖 • 490 关注
  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3187 引用 • 8213 回帖
  • 开源

    Open Source, Open Mind, Open Sight, Open Future!

    408 引用 • 3574 回帖
  • 博客

    记录并分享人生的经历。

    273 引用 • 2388 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • washmore

    D 大太给面子了呀...我这就去升级 2.9.4 咩哈哈哈哈 ,另外发现最近的文章无法同步到社区来了,这个我也去看一下咩原因

  • 其他回帖
  • 升级失败了。
    [INFO ]-[2018-09-16 15:36:21]-[org.b3log.solo.service.UpgradeService:191]: Upgrading from version [2.9.3] to version [2.9.4]....
    [ERROR]-[2018-09-16 15:36:21]-[org.b3log.solo.service.UpgradeService:210]: Upgrade failed!
    org.h2.jdbc.JdbcSQLException: Duplicate column name "ARTICLEAUTHORID"; SQL statement:
    ALTER TABLE b3_solo_article ADD articleAuthorId VARCHAR(19) DEFAULT '' NOT NULL [42121-190]
    at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
    at org.h2.message.DbException.get(DbException.java:179)
    at org.h2.message.DbException.get(DbException.java:155)
    at org.h2.table.Table.setColumns(Table.java:409)

    1 回复
  • 我 grep 了一下
    articleUpdateDate
    似乎还有不少 ftl 模版在用这个.
    p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Monaco; color: #f3f3bd; background-color: #2a2a2a; background-color: rgba(42, 42, 42, 0.96)} p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Monaco; color: #f3f3bd; background-color: #2a2a2a; background-color: rgba(42, 42, 42, 0.96); min-height: 16.0px} span.s1 {font-variant-ligatures: no-common-ligatures} span.Apple-tab-span {white-space:pre}

    grep -ir articleUpdateDate .

    Binary file ./.git/index matches

    ./.idea/dataSources/e220bb86-34ca-4298-ab6f-714ddc29d30c.xml:

    ./src/test/resources/skins/mobile/article.ftl: ${article.articleUpdateDate?string("yyyy-MM-dd HH:mm:ss")}

    ./src/test/resources/skins/mobile/article-list.ftl: <div class="cal-month month-{article.articleUpdateDate?string("MM")}">{article.articleUpdateDate?string("MM")}

    ./src/test/resources/skins/mobile/article-list.ftl:

    ${article.articleUpdateDate?string("dd")}

    ./src/main/webapp/skins/ease/article.ftl: ${article.articleUpdateDate?string("yy-MM-dd HH:mm")}

    ./src/main/webapp/skins/ease/article-list.ftl: ${article.articleUpdateDate?string("yy-MM-dd HH:mm")}

    ./src/main/webapp/skins/owmx-3.0/article.ftl: {updateDateLabel}:{article.articleUpdateDate?string("yyyy-MM-dd HH:mm:ss")}

    ./src/main/webapp/skins/owmx-3.0/article-list.ftl: ${article.articleUpdateDate?string("yyyy-MM-dd HH:mm")}

    ./src/main/webapp/skins/NeoEase/article.ftl: ${article.articleUpdateDate?string("yyyy-MM-dd HH:mm:ss")}

    ./src/main/webapp/skins/NeoEase/article-list.ftl: ${article.articleUpdateDate?string("yyyy-MM-dd HH:mm:ss")}

    ./src/main/webapp/skins/tree-house/article.ftl: ${article.articleUpdateDate?string("yyyy-MM-dd HH:mm:ss")}

  • 88250

    用 H2 自带的那个 web 管理工具,看下表结构。

    1. article 表里面删了三列 articleCreateDatearticleUpdateDatearticleAuthorEmail,多加了三列 articleCreatedarticleUpdatedarticleAuthorId
    2. comment 表里面删了一列 commentDate,多加了一列 commentCreated
    3. 确认下以上多加的列是否有值

    如果以上 3 步确认没问题,然后看下 option 表的 version 行,值如果是 2.9.3 的话,手动更新成 2.9.4 然后重启。

    1 回复
  • 查看全部回帖