1.介绍Maven-------->>>>总结一句话(管理jar包非常方便,非常推荐使用,but会经常出现maven版本和依赖版本之间的不兼容问题,需要自行摸索)
Maven主要服务于基于java平台的项目构建,依赖管理和项目信息管理.无论是小型的开源类库项目,还是大型的企业级应用; 无论是传统的瀑布式开发,还是流行的敏捷开发,Maven 都能大显身手
2.项目构建:
不管你是否意识到,构建(build)是每一位程序员每天都在做的工作。早上来到公司, 我们做的第一件事就是从源码库签出最新的代码,然后进行单元测试,如果测试失败,会找 相关的同事一起调试,修复错误代码。 接着回到自己的工作上来,编写自己的单元测试及 产品代码。
仔细总结一下,我们会发现,除了编写源代码,我们每天有相当一部分时间花在了编译,
运行单元测试,生成文档,打包和部署等繁琐且不起眼的工作上,这就是构建。 如果我们
现在还手工这样做,那成本也太高了,于是有人用软件的方法让这一系列工作完全自动化,
使得软件的构建可以像全自动流水线一样,只需要一条简单的命令,所有繁琐的步骤都能够
自动完成,很快就能得到最终结果
今日问题1:
maven低版本使用依赖很容易发生各种问题:
在maven3.5.3版本中
ArrayList<students> students1 = new ArrayList<>();
这段代码就会报错
java: -source 1.5 中不支持 diamond 运算符 (请使用 -source 7 或更高版本以启用 diamond 运算符)
最简单的方法就是使用高版本maven
如果非要使用当前版本则可以通过以下三种方法:
要解决这个问题,你可以通过以下几种方法之一:
(1)升级 Java 版本: 修改你的项目配置,将 Java 编译版本升级到 7 或更高版本。这样就可以使用 diamond 运算符。
在 Maven 项目中,可以通过在 pom.xml 文件中设置 <maven.compiler.source> 和 <maven.compiler.target> 属性来指定 Java 版本:
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
(2)避免使用 diamond 运算符: 如果无法升级 Java 版本,可以避免使用 diamond 运算符,而是显式地写出泛型类型。
例如,将 new ArrayList<>() 改为 new ArrayList() 或 new ArrayList() 等。
(3)在 IDE 中设置编译版本: 如果你在使用 IDE(如 IntelliJ IDEA、Eclipse 等),可以在项目设置中修改编译器的版本,确保与你的代码兼容。
今日问题2
严重: init datasource error, url: jdbc:mysql://localhost:3306/bank
java.sql.SQLException: The server time zone value '�й���ʱ��' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the 'serverTimezone' configuration property) to use a more specific time zone value if you want to utilize time zone support.
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
这个问题只要出现直接在mysql连接地址后面加上参数
?serverTimezone=UTC
就直接解决掉了