开源项目学习指南,血与泪的教训(新手向)

本文为新手提供了详尽的开源项目学习指南,从寻找项目到环境搭建,再到项目运行,强调了阅读文档、环境配置的重要性,并分享了一个因环境问题导致的困扰,提醒读者避免类似错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.开源项目在哪里

(1) GitHubGitHubGitHub

(2) 码云

2.观察一个开源项目

以码云上的 RuoYiRuoYiRuoYi 项目为例。

(1) 阅读 README.mdREADME.mdREADME.md 文件,这里一般是对项目的一些介绍,比如用到了哪些技术栈,对应的版本,有哪些功能,线上演示网址等等。
(2) 简单浏览项目的代码封包结构 ,得到基本的信息。比如这是一个 MavenMavenMaven 项目还是一个 GradleGradleGradle 项目,项目有没有提供 .sql.sql.sql 文件等等。

在这里插入图片描述

我们看若依项目的结构可以发现

  • pom.xmlpom.xmlpom.xml 表示这是一个 MavenMavenMaven 项目
  • 有一个 sqlsqlsql 文件夹,内部有 .sql.sql.sql 文件,这样我们就不需要自己建表了
  • 项目结构大致了解,有 adminadminadmincommoncommoncommon 等等
(3) 仔细浏览网页查看有没有提供该项目的开发手册或使用文档

若依提供了使用文档

一定要仔细阅读文档或之类的使用指南,不要拿到项目下载下来就开始运行!

特别注意项目运行时的环境以及项目推荐的技术栈版本。特别是环境环境环境,这个很关键。

在这里插入图片描述

这边可以看到若依推荐的环境配置。说一个小插曲来引起大家对环境的重视。

昨天下午我在跑若依项目时,JDKJDKJDK 环境没问题,MySQL5.5.0MySQL 5.5.0MySQL5.5.0MavenMavenMaven 没问题,结构项目一直跑步起来。错误如下:

java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)

GoogleGoogleGoogle 有的说要修改 MySQLMySQLMySQL 密码的,有的说要改权限的,但我知道我的肯定不是那种问题。我在本地是可以连接数据库的,但项目无法连接数据库,所以我一直以为是配置文件写错了,比如 usernamepassword 多按了空格啊,url 写错了啊之类的。但全不是,排除一切不可能就只有一种可能,环境问题。所以我赶紧把 MySQLMySQLMySQL 换成了最新,再启动项目果然不报那个错误了。而排除这个错误花了我近一个下午的时间。

3.搭建好环境

自己的环境一定不要低于项目给出的环境版本,最好是高于提供的版本。这个很关键!

4.下载开源项目并导入
  • 直接下载压缩包
  • gitgitgit clonecloneclone

IDEAIDEAIDEA 导入或用 EclipseEclipseEclipse 导入项目

5.修改配置文件

(1) 数据库配置

可以看到 urlurlurl 会去找 ryryry ,所以我们需要先建好 ryryry 这个数据库,根据提供的.sql文件建好表。

根据自己的 MySQLMySQLMySQL 修改 usernamepassword,保证项目能够连接数据库。

常见的数据库方面错误就是我之前提到的

java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)

在环境没问题的情况下,这个有可能是 urlusernamepassword 写错了,一定要好好检查。

IDEAIDEAIDEA 中可以在这里连接数据库

(2) 查看配置中的项目启动的端口号

6.启动项目

之前的步骤都没问题了,按道理也没问题了。这个时候就可以把项目运行起来了。

7.总结

(1) 看项目结构,了解基本信息

(2) 找找开发文档或使用说明,配好相关的环境

(3) 下载项目并导入

(4) 查看配置并修改必要配置

(5) 建立起对应的数据库

(6) 运行项目

(7) 项目启动成功


更多Java内容欢迎扫码关注我的公众号ACJavaBear,文章第一时间会发在上面。一起学Java吧

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值