我正在尝试对基于蚂蚁的(Netbeans RCP)项目进行评分并找到奇怪的gradle行为.我用剖析器做了一些观察并得到了下一个结果.
Gradle 1.9
Build time: 2013-11-19 08:20:02 UTC
Build number: none
Revision: 7970ec3503b4f5767ee1c1c69f8b4186c4763e3d
Groovy: 1.8.6
Ant: Apache Ant(TM) version 1.9.2 compiled on July 8 2013
Ivy: 2.2.0
JVM: 1.7.0_45 (Oracle Corporation 24.45-b08)
OS: Linux 2.6.32-431.el6.x86_64 amd64
$ echo $GRADLE_OPTS
-XX:+UnlockCommercialFeatures -XX:+FlightRecorder -Xms256m -Xmx2048m
$ echo $ANT_OPTS
-XX:+UnlockCommercialFeatures -XX:+FlightRecorder -Xms256m -Xmx2048m
Run Code Online (Sandbox Code Playgroud)
build.gradle - 包含ant任务的导入(清理,构建,单元测试)
Gradle fork为此分离jvm并运行具有不同Xmx值的JUnitTestRunner,忽略$ GRADLE_OPTS和$ ANT_OPTS值: - 108.80 MB
不知道gradle如何为每个JUnitTestRunner ant任务定义Xmx大小.它在每个任务期间作为GC工作正常.所有模块的所有单元测试都没有错误地通过.
Gradle知道以前的构建结果,并立即开始对未经测试的模块进行junit测试.您可以在这里看到输出!Gradle fork为此分离jvm(忽略$ GRADLE_OPTS值)并运行GradleWorkerMain.而这个jvm有1.42GB Xmx和500 …
当Hibernate尝试为Item创建映射时,下一个Exception会抛出http://pastebin.com/RdysJeiU
异常的原因是列号和实际属性号不匹配.
接下来是数组的内容:
columnAliases = [IMAGE_TITLE]
propertyNames = [imageMetadata,title]
Run Code Online (Sandbox Code Playgroud)
-
org.hibernate.persister.collection;
public abstract class AbstractCollectionPersister
private void initCollectionPropertyMap(String aliasName, Type type, String[] columnAliases, String[] columnNames) {
collectionPropertyColumnAliases.put( aliasName, columnAliases );
collectionPropertyColumnNames.put( aliasName, columnNames );
if ( type.isComponentType() ) {
CompositeType ct = (CompositeType) type;
String[] propertyNames = ct.getPropertyNames();
for ( int i = 0; i < propertyNames.length; i++ ) {
String name = propertyNames[i];
collectionPropertyColumnAliases.put( aliasName + "." + name, columnAliases[i] );
collectionPropertyColumnNames.put( aliasName + "." + name, columnNames[i] …Run Code Online (Sandbox Code Playgroud)