如何参与Hibernate-ORM项目
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项目的更多相关文章
- 如何参与flink开源项目
参与flink开源项目 https://flink.apache.org/how-to-contribute.html 1.回答社区问题 2.撰写bug报告 3.对于改进建议或新的特征 4.帮助别人并 ...
- wildfly 10上使用最新的 Hibernate ORM OGM
ORM是关系型数据库连接:ogm是No sql数据库连接,Mongo, redis等. 1,下载ogm zip包,解压到wildfly_home\modules\system\layers\base, ...
- 使用github参与到开源项目的维护
参与到开源项目的维护工作一般分两种,一种是由项目建立者拉入到贡献者列表中,拥有对项目的读写权限,而普通用户对项目仅有读取权限,另一种是fork项目到自己仓库,然后把修改后的内容发送给项目管理者者请求合 ...
- 我参与 Seata 开源项目的一些感悟
丁老师在他的知识星球邀请我回答以下一个问题: 我觉得这个问题非常有意思,姑且把它贴到公众号这里,与大家分享一下我对这个问题的一些感悟. 感谢丁老师的邀请问答: 在这里我就简单说下,我这段时间参与 Se ...
- 用spring+hibernate+struts 项目记录以及常用的用法进等
一.hibernate1. -----BaseDao------ // 容器注入 private SessionFactory sessionFactory; public void setSessi ...
- [JavaEE] Hibernate ORM
一. Hibernate的简要介绍 Hibernate是轻量级Java EE应用的持久层解决方案,Hibernate不仅管理者Java类到数据库表的映射(包括Java 数据类型到SQL数据类型的映射) ...
- IntelliJ IDEA 创建Spring+SpringMVC+hibernate+maven项目
第一步: 新建maven管理的web项目, 具体步骤参考:http://www.cnblogs.com/gczmn/p/8693734.html 第二步: 创建项目结构, 完整项目结构如下: 第三步: ...
- Hibernate (ORM)
1 框架体系结构 2 hibernate入门 2.1 ORM框架 Hibernate是一个数据持久化层的ORM框架. Object:对象,java对象,此处特指JavaBean Relational: ...
- Git.Framework 框架随手记--ORM项目工程
前面已经简单介绍过了该框架(不一定是框架),本文开始重点记录其使用过程.可能记录的内容不是太详尽,框架也可能非常烂,但是里面的代码句句是实战项目所得.本文非教唆之类的文章,也非批判之类的文章,更不是炫 ...
- springMVC+hibernate构建项目
这几天要用到springMVC+spring+hibernate构建框架,使用的是eclipse今天闲下来把这些记录下来 首先要导入spring 的jar包和hibernate的jar包
随机推荐
- mysql备份并自动压缩命令
#! /bin/bash mysqldump -uroot -p'password' databasename | gzip > /home/backup/database_`date +%Y% ...
- UVALive 7070 The E-pang Palace(暴力)
实话说这个题就是个暴力,但是有坑,第一次我以为相含是不行的,结果WA,我加上相含以后还WA,我居然把这两个矩形的面积加在一块了吗,应该取大的那一个啊-- 方法就是枚举对角线,为了让自己不蒙圈,我写了一 ...
- ajax基本使用
ajax在用于异步交互以来,一直被广泛使用,其使用语法格式基本如下: 基本格式为$.ajxa({ type:"",数据传送方式POST,GET url:"",处 ...
- HDU 4289 Control
最小割 一个点拆成两个 AddEdge(i,i+N,x); 原图中的每条边这样连 AddEdge(u+N,v,INF); AddEdge(v+N,u,INF); S是源点,t+N是汇点.最大流就是答案 ...
- nefu 179 珠子(最长递增子序列问题)
Description 小林有一串珠子,是由很多个大小不同的珠子串联在一起组成的圆环型的,且其中每个珠子的大小可以用int型的整数来表示.小林有一个爱好就是数珠子,他想数那些位置相邻而且大小只相差1的 ...
- AC Me
AC Me Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other) Total Submiss ...
- python--lambda和def函数
1.Python lambda和Python def区别分析 Python支持一种有趣的语法,它允许你快速定义单行的最小函数.这些叫做lambda的函数,是从Lisp借用来的,可以用在任何需要函数的地 ...
- js1中call和apply的用法
js1中call和apply的用法 е辊顷 饼蹭瑭 岚辗疥 碜坪命 笛攮鼠 鲳篝等 ざ遛膜 镀鞭冢蒯 晕 册薷濑 就不是抓了而是人拳啪啪两声两个人都被拳头打在了腿骨 许郾犍 国 ...
- chrome浏览器调试功能之后端篇
作为后端开发人员,可能有很多同学不怎么了解chrome调试功能,而即将成为大神的我们,怎么也得会,知其然更要知其所以然,今天我带领大家好好的梳理一下,chrome浏览器调试,个人把它分成了前端功能和后 ...
- invalid stream header: 31323334
记录一下,都配置好了之后,用java客户端设置key-value,在服务器get没有问题,然后再服务器端设置一个key-value,java客户端获取出错 转载一下网上同样问题的描述,以及解决方案 严 ...