当前位置: 首页 > news >正文

solo博客源码使用idea编译运行

solo博客源码使用idea编译运行

  • solo博客开源地址
  • 本地运行
  • IDEA 编译执行
    • 默认直接编译
    • jar 包编译

solo博客开源地址

项目地址:GitHub - 88250/solo: 🎸 B3log 分布式社区的 Java 博客端节点系统,欢迎加入下一代社区网络。B3log distributed community blog-end node based on Java, welcome to join the next generation community network.

本地运行

本地运行主要用于试用或者生成静态站点,生成静态站点的用法请参考这里。(视频演示教程请看这里)

下载最新的 Solo 包解压,进入解压目录执行:

  • Windows: java -cp "lib/*;." org.b3log.solo.Server
  • Unix-like: java -cp "lib/*:." org.b3log.solo.Server

启动所有参数如下,仅做参考:

--listen_port <LISTEN_PORT>                           listen port, default is 8080
--lute_http <LUTE_HTTP>                               lute http URL, default is http://localhost:8249, see
--runtime_mode <RUNTIME_MODE>                         runtime mode (DEVELOPMENT/PRODUCTION), default is DEVELOPMENT
--server_host <SERVER_HOST>                           browser visit domain name, default is localhost
--server_port <SERVER_PORT>                           browser visit port, default is 8080
--server_scheme <SERVER_SCHEME>                       browser visit protocol, default is http
--static_path <STATIC_PATH>                           browser visit static resource path, default is empty
--static_server_host <STATIC_SERVER_HOST>             browser visit static resource domain name, default is
--static_server_port <STATIC_SERVER_PORT>             browser visit static resource port, default is 8080
--static_server_scheme <STATIC_SERVER_SCHEME>         browser visit static resource protocol, default is http
--unix_domain_socket_path <UNIX_DOMAIN_SOCKET_PATH>   unix domain socket path

IDEA 编译执行

默认使用Java环境,Java版本需要高于1.8,这里使用 jdk17版本;

默认直接编译

在这里插入图片描述

jar启动方式失败:直接启动打包生成的solo.jar

D:\work\solo\target>java -jar solo.jar
错误: 找不到或无法加载主类 org.b3log.solo.Server
原因: java.lang.NoClassDefFoundError: org/b3log/latke/http/BaseServer

推荐启动:进入solo文件夹下,启动成功;

D:\work\solo\target\solo>java -cp "lib/*;." org.b3log.solo.Server
[WARN ]-[2024-10-16 16:40:50]-[org.b3log.latke.Latkes:713]: !!!!Runtime mode is [DEVELOPMENT], please make sure configured it with [PRODUCTION] in latke.properties if deployed on production environment!!!!
[INFO ]-[2024-10-16 16:40:50]-[org.b3log.solo.Server:259]: Solo is booting [ver=4.4.0, os=Windows 11, isDocker=false, inJar=false, luteAvailable=false, pid=28336, runtimeDatabase=MYSQL, runtimeMode=DEVELOPMENT, jdbc.username=xdtian, jdbc.URL=jdbc:mysql://124.71.65.251:3309/solo?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true]
[INFO ]-[2024-10-16 16:40:52]-[org.b3log.solo.util.Skins:73]: Loaded template from classpath
[INFO ]-[2024-10-16 16:40:53]-[org.b3log.solo.Server:306]: Solo is running

jar 包编译

请在 pom.xml 中搜索 maven-assembly-plugin 的注释进行配置即可。请注意:使用 jar 运行不支持:

  • 静态站点生成
  • 可能存在其他未知问题,测试发现看板娘等第三方组件无法使用。

==建议尽量不要打 jar 部署,服务器上请通过 Docker 部署。==但是我服务器资源有限,不想安装docker,直接以编译包的形式运行,节省资源。

pom.xml 中该<plugin>段注释内容放开,然后 maven 编译 package

<!--            <plugin>-->
<!--                <artifactId>maven-assembly-plugin</artifactId>-->
<!--                <configuration>-->
<!--                    <descriptors>-->
<!--                        <descriptor>src/assembly/bin.xml</descriptor>-->
<!--                    </descriptors>-->
<!--                </configuration>-->
<!--                <executions>-->
<!--                    <execution>-->
<!--                        <id>make-assembly</id>-->
<!--                        <phase>package</phase>-->
<!--                        <goals>-->
<!--                            <goal>single</goal>-->
<!--                        </goals>-->
<!--                    </execution>-->
<!--                </executions>-->
<!--            </plugin>--><!-- 需要打 jar 部署的话注释掉上面的配置,启用下面这段配置--><plugin><artifactId>maven-assembly-plugin</artifactId><configuration><appendAssemblyId>false</appendAssemblyId><descriptorRefs><descriptorRef>jar-with-dependencies</descriptorRef></descriptorRefs><archive><manifest><mainClass>org.b3log.solo.Server</mainClass></manifest></archive></configuration><executions><execution><id>make-assembly</id><phase>package</phase><goals><goal>assembly</goal></goals></execution></executions></plugin>

打包后target目录下的 solo.jar 可直接运行。

D:\work\solo\target>java -jar solo.jar
WARNING: sun.reflect.Reflection.getCallerClass is not supported. This will impact performance.
[WARN ]-[2024-10-16 16:48:27]-[org.b3log.latke.Latkes:713]: !!!!Runtime mode is [DEVELOPMENT], please make sure configured it with [PRODUCTION] in latke.properties if deployed on production environment!!!!
[INFO ]-[2024-10-16 16:48:28]-[org.b3log.solo.processor.console.StaticSiteConsole:161]: Do not support export static site when running in jar
[INFO ]-[2024-10-16 16:48:28]-[org.b3log.solo.Server:259]: Solo is booting [ver=4.4.0, os=Windows 11, isDocker=false, inJar=true, luteAvailable=false, pid=10780, runtimeDatabase=MYSQL, runtimeMode=DEVELOPMENT, jdbc.username=xdtian, jdbc.URL=jdbc:mysql://124.71.65.251:3309/solo?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true]
[INFO ]-[2024-10-16 16:48:29]-[org.b3log.solo.service.ImportService:76]: Ignored import markdowns when running in jar
[INFO ]-[2024-10-16 16:48:30]-[org.b3log.solo.util.Skins:73]: Loaded template from classpath
[INFO ]-[2024-10-16 16:48:30]-[org.b3log.solo.Server:306]: Solo is running
http://www.lryc.cn/news/478537.html

相关文章:

  • VBA07-方法
  • spring boot 统一异常处理
  • 跟着小土堆学习pytorch(六)——神经网络的基本骨架(nn.model)
  • 数字化落地过程中的研发效能治理如何开展?
  • Windows安装配置node.js
  • Javaweb梳理9——JDBC
  • 逆向CTF入门(如何找main)
  • c语言归并排序
  • 碳化硅陶瓷膜的特性
  • 机器学习(三)——决策树(附核心思想、重要算法、概念(信息熵、基尼指数、剪枝处理)及Python源码)
  • 良心无广,这五款电脑软件堪称必备,最后一个比快播都猛
  • Vue3中实现原生CSS完成圆形按钮点击粒子效果和定点旋转动画
  • 百度网盘 服务器开小差了
  • 数据分析师招聘要求
  • 【C语言】实战-力扣题库:回文链表
  • Centos安装Minio
  • 二叉树的基本概念和底层实现
  • GIF图片格式详解(三)
  • 类和对象相关题
  • Word大珩助手:超大数字怎么读?35位数字?69位数字?
  • 阿里云k8s-master部署CNI网络插件遇到的问题
  • 【LwIP源码学习4】主线程tcpip_thread
  • 求猫用宠物空气净化器推荐,有没有吸毛强、噪音小的产品
  • pycharm中python控制台出现CommandNotFoundError: No command ‘conda run‘.
  • 架构师备考-架构基本概念
  • 信奥赛C++知识点
  • 高并发内存池扩展 -- 处理大内存,优化释放时需要传入空间大小,加入定长内存池,存放映射关系的容器的锁机制,优化性能(基数树,优势,优化前后对比)
  • Composite(组合)
  • 有Bootloader,为什么还要BROM?
  • 【MATLAB代码】CV和CA模型组成的IMM(滤波方式为UKF),可复制粘贴源代码