栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 软件开发 > 后端开发 > Java

JPress 项目综述

Java 更新时间:发布时间: 百科书网 趣学号

2021SC@SDUSC

目录

关于 JPress

安装与部署

软件版本选择与安装

使用 IDE 部署项目

源码研究与分工

总结


关于 JPress

JPress 是由 Java 开发的、类似 WordPress 的、并在此基础上添加电商功能的产品,支持响应式前端模板及符合国人创新运营方案的插件,项目以 LGPL-3.0 协议在 Gitee & GitHub 上开源。

JPress 可轻松制作成资讯站、博客、论坛等常见个人网站,企业官网、营销单页等常见中小型团队及企业网站,满足包括微信小程序、百度小程序、管理微信公众号等国内运营常见需求,以及支持数据库定时备份、网站统计、元信息、爬虫等强大插件。

以上,即可将 JPress 理解为适合非大型企业降低开发成本而使用的、开源的、快速建站产品。


安装与部署

JPress 支持使用 Docker 一键部署、阿里云及腾讯云在线配置、通过 Eclipse 或 IntelliJ IDEA 等开发工具安装。因为后续需要分析源码,必须要有一个方便的方式来查看源码,故这里使用集成开发环境来部署项目。

软件版本选择与安装

JPress 项目选择最新版本 v4.1.3,因为其版本还在不断地更新,所以这里使用 Git 将其从 Github 上 Clone 下来,当发现 JPress 有版本更新的时候使用 Pull 直接下载,保持最新版本。

JPress 项目只支持 JDK 8,而我本地上使用的是 9 月份刚刚更新的 JDK 17,最开始在编译的时候会报错,所以我在 Oracle 官网上下载了 JDK 8 及其文档。但问题在于我之前的项目使用的是比较新的版本,因此我需要不停地在两个版本之间切换。

这很麻烦,于是我在互联网上搜了几个 PowerShell 脚本,方便我进行版本的切换。具体方案是通过 PowerShell 修改 Windows 环境变量中 JAVA_HOME 的值来达到 JDK 版本更换的目的。下图是切换为 JDK 8 的脚本。

@echo off
set JAVA_HOME=C:Program FilesJavajdk1.8.0_202
setx JAVA_HOME "%JAVA_HOME%" /M
set Path=%JAVA_HOME%bin;%Path%
echo Java 8 activated as system-wide default.

之后需要安装 Maven 3.0+,这里我从 Maven 官网上下载了最新版本 v3.8.2,并设置好相关配置,输入 mvn -v 查看得知 Maven 已经安装完成。

使用 IDE 部署项目

将 JPress 项目导入 IntelliJ IDEA,并在项目的根目录执行 mvn clean package 命令进行编译。编译在本机跑大约进行了 40 秒,后在开发工具中执行 starter/src/main/java/io.jpress.Starter 下的 main() 方法运行。运行后,使用浏览器访问 http://127.0.0.1:8080,提示需要建立 MySQL 数据库且只支持 5.6 & 5.7 版本,这里使用了在腾讯云学生机上部署的 MySQL 数据库。

一段时间后,进入后台页面,安装成功。


源码研究与分工

整个项目的结构如下:

经过研究与讨论,我们发现项目核心代码主要存在于四个位置,即 jpress-core、jpress-article、jpress-page 和 jpress-template、jpress-product。其余的各个模块要么特别繁多而零散、不重要但又必不可少,要么是每个核心模块都需要用到的工具类,这两类都不值得专门找人分析,只需要在分析核心模块的时候顺便分析一下即可。

最终我选择了 Article 部分,其中包含了与核心类 article 相关的 model、service、search 等模块,是值得好好分析的部分。


总结

本文综述了 JPress 的项目背景、安装,以及组内任务的划分。本学期的主要任务是对源码进行分析研究,通过大型开源项目来了解开发项目相关的背景知识,如如何组织项目架构、如何划分项目权责等。这是本学期的一个开始,感觉良好,希望可以做到位。

转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/281455.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号