1.注册 hibernate jira账户,hibernate中的issue和bug都会在此论坛发布

注册地址:https://hibernate.onjira.com

2.创建Hibernate-ORM分支,前提必须要注册一个github账户。

基于hibernate-orm在github上的官方主版本,创建一个fork到自己repo中。

3.安装 git客户端

推荐git-preview和tortoisegit配合使用。

git-preview的下载地址:http://msysgit.github.io/

tortoisegit的下载地址:https://download.tortoisegit.org/tgit/

详细安装配置教程见:http://blog.csdn.net/xiaobin_hlj80/article/details/10953701

4.利用git客户端,从自己的github代码仓库中把代码取到本地,命令如下

git clone https://github.com/zhulongchao/hibernate-orm.git

5.编译hibernate-orm

hibernate-orm的默认编译工具是gradlew,该工具和maven类似。

进入hibernate-orm目录下,gradlew clean build命令,进行初始化编译。

如果遇到如下问题:

(1): core\src\main\org\hibernate\annotations\SQLDelete.java:37:错误:编码GBK的不可映射字符

需要进控制面板,修改区域语言里面-管理-更改系统区域设置为英语(英国)

(2) java.lang.OutOfMemoryError: Java heap space

修改gradlew.bat文件,调整堆最大的分配内存大小。如果是32位的jdk,需调整到64位jdk(最新依赖的jdk是1.8)

@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
          set DEFAULT_JVM_OPTS="-Xmx3072m"

6.转为eclipse工程

执行命令:gradlew eclipse,生成project和classpath文件

7.导入hibernate-orm到eclipse中

注意:如果hibernate-orm目录下有project文件,需要删除后,再导入。

8.导入后如下,项目出现很多错误

错误1:A cycle was detected in the build path of project 'hibernate-c3p0'.The cycle consists of projects {hibernate-testing, hibernate-core, hibernate-c3p0, hibernate-ehcache, hibernate-enhance-maven-plugin, hibernate-entitymanager, hibernate-envers, hibernate-gradle-plugin, hibernate-hikaricp, hibernate-infinispan, hibernate-jpamodelgen, hibernate-osgi, hibernate-proxool}hibernate-c3p0 Build pathBuild Path Problem。

解决办法:Window -> Preferences-> Java -> Compiler -> Building -> Building path problems -> Circular dependencies -> 将Error改成Warning。

错误2:是某些依赖类,没有加入到build path

解决办法:把依赖类所在的class文件夹,加入到build path

错误3:某些动态生成的java文件,所在目录有误,比如target目录,

解决办法:把该目录不作为source code目录

9.提交和更新

提交针对jira上的修改时,commit的message内容必须要为jira上的issue key。

在提交之前,最好获取一下hibernate-orm官方git中的最新代码,获取的方式以rebase,而不是merge,merge容易打乱分支图。

提交代码,命令如下  git push zhulongchao HHH-123,一旦提交后,hibernate-orm官方的维护人员会看到你提交的代码,决定是不是要把你的提交拉倒主版本里面。

总结:经过以上配置后,尽情happy吧。

如何参与Hibernate-ORM项目的更多相关文章

  1. 如何参与flink开源项目

    参与flink开源项目 https://flink.apache.org/how-to-contribute.html 1.回答社区问题 2.撰写bug报告 3.对于改进建议或新的特征 4.帮助别人并 ...

  2. wildfly 10上使用最新的 Hibernate ORM OGM

    ORM是关系型数据库连接:ogm是No sql数据库连接,Mongo, redis等. 1,下载ogm zip包,解压到wildfly_home\modules\system\layers\base, ...

  3. 使用github参与到开源项目的维护

    参与到开源项目的维护工作一般分两种,一种是由项目建立者拉入到贡献者列表中,拥有对项目的读写权限,而普通用户对项目仅有读取权限,另一种是fork项目到自己仓库,然后把修改后的内容发送给项目管理者者请求合 ...

  4. 我参与 Seata 开源项目的一些感悟

    丁老师在他的知识星球邀请我回答以下一个问题: 我觉得这个问题非常有意思,姑且把它贴到公众号这里,与大家分享一下我对这个问题的一些感悟. 感谢丁老师的邀请问答: 在这里我就简单说下,我这段时间参与 Se ...

  5. 用spring+hibernate+struts 项目记录以及常用的用法进等

    一.hibernate1. -----BaseDao------ // 容器注入 private SessionFactory sessionFactory; public void setSessi ...

  6. [JavaEE] Hibernate ORM

    一. Hibernate的简要介绍 Hibernate是轻量级Java EE应用的持久层解决方案,Hibernate不仅管理者Java类到数据库表的映射(包括Java 数据类型到SQL数据类型的映射) ...

  7. IntelliJ IDEA 创建Spring+SpringMVC+hibernate+maven项目

    第一步: 新建maven管理的web项目, 具体步骤参考:http://www.cnblogs.com/gczmn/p/8693734.html 第二步: 创建项目结构, 完整项目结构如下: 第三步: ...

  8. Hibernate (ORM)

    1 框架体系结构 2 hibernate入门 2.1 ORM框架 Hibernate是一个数据持久化层的ORM框架. Object:对象,java对象,此处特指JavaBean Relational: ...

  9. Git.Framework 框架随手记--ORM项目工程

    前面已经简单介绍过了该框架(不一定是框架),本文开始重点记录其使用过程.可能记录的内容不是太详尽,框架也可能非常烂,但是里面的代码句句是实战项目所得.本文非教唆之类的文章,也非批判之类的文章,更不是炫 ...

  10. springMVC+hibernate构建项目

    这几天要用到springMVC+spring+hibernate构建框架,使用的是eclipse今天闲下来把这些记录下来 首先要导入spring 的jar包和hibernate的jar包

随机推荐

  1. erlang 常用的计算长度函数

    1.size 可以计算元祖长度和标准binary长度 2.tuple_size 计算元祖长度 3.length 计算列表长度 4.byte_size 计算标准和非标准binary的长度 非标准 < ...

  2. 阿里云ECOS 集群方案

    转载 https://it.toggle.cn/article_detail/7e6f674b2564d6c319f807b4fda87eac.html 架构说明 前端由阿里云SLB统一分发Web请求 ...

  3. 201312月CCF-2,ISBN号码分析

    明天要考CCF啦,偶还是很紧张的.最近看了数据结构,今天才开始上机练习,对,我就是这么懒..废话不多说,我写这篇文章主要是分析CCF编程的小窍门,因为在网上没找到,所以我决定自力更生丰衣足食.!!!! ...

  4. quicksort快排

    废话不多说,上代码: void quicksort(int x[], int lo, int hi){ int i = lo, j = hi; ]; while(i <= j){ while(x ...

  5. 关于oracle数据库(7)查询1

    查询所有列数据 select * from 表名; 查询指定列数据 效率高于查询所有列数据 select 列名,列名,列名 from 表名; --先执行from后面的代码,找到表,在执行select后 ...

  6. Shell脚本中让进程休眠的方法(sleep用法)

    有时候写Shell的脚本,用于顺序执行一系列的程序. 有些程序在停止之后并没能立即退出,就例如有一个 tomcat 挂了,就算是用 kill -9 命令也还没瞬间就结束掉. 这么如果 shell 还没 ...

  7. CSS 各类 块级元素 行级元素 水平 垂直 居中问题

    元素的居中问题是每个初学者碰到的第一个大问题,在此我总结了下各种块级 行级 水平 垂直 的居中方法,并尽量给出代码实例. 首先请先明白块级元素和行级元素的区别 行级元素 一块级元素 1 水平居中: ( ...

  8. HDU 5769 Substring

    后缀数组. 然后按照排序完成之后的顺序,每个后缀统计贡献量. 统计第i个后缀的贡献的时候,如果这个后缀中没有X,贡献度为0. 有贡献的分3种情况考虑: 1.如果这个后缀height部分等于0(即与前一 ...

  9. 通过CSS实现各种方向的三角形

    #triangle-up { width: 0; height: 0; border-left: 50px solid transparent; border-right: 50px solid tr ...

  10. json格式数据,将数据库中查询的结果转换为json, 然后调用接口的方式返回json(方式一)

    调用接口,无非也就是打开链接 读取流 将结果以流的形式输出 将查询结果以json返回,无非就是将查询到的结果转换成jsonObject ================================ ...