You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@groovy.apache.org by "Pascal Schumacher (JIRA)" <ji...@apache.org> on 2015/10/19 18:11:05 UTC
[jira] [Updated] (GROOVY-7518) hashCode() throws NPE when using
@CompileStatic with @EqualsAndHashCode
[ https://issues.apache.org/jira/browse/GROOVY-7518?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Pascal Schumacher updated GROOVY-7518:
--------------------------------------
Fix Version/s: (was: 2.5.0-beta-1)
> hashCode() throws NPE when using @CompileStatic with @EqualsAndHashCode
> -----------------------------------------------------------------------
>
> Key: GROOVY-7518
> URL: https://issues.apache.org/jira/browse/GROOVY-7518
> Project: Groovy
> Issue Type: Bug
> Affects Versions: 2.4.4
> Reporter: Thomas
> Assignee: Paul King
> Fix For: 2.4.5
>
>
> Given the following class
> {code:title=Person.groovy}
> import groovy.transform.CompileStatic
> import groovy.transform.EqualsAndHashCode
> @EqualsAndHashCode
> @CompileStatic
> class Person {
> Long someLong
> }
> {code}
> and the test
> {code:title=PersonTest.groovy}
> import static org.junit.Assert.*
> import org.junit.Test
> class PersonTest {
> @Test
> void hashcodeWithoutLongValue() {
> def person = new Person()
> assert person.hashCode()
> }
> }
> {code}
> and the gradle configuration:
> {code:title=build.gradle}
> buildscript {
> repositories {
> mavenCentral()
> }
> }
> apply plugin: 'groovy'
> apply plugin: 'eclipse'
> jar {
> baseName = 'HashCodeNPE'
> version = '0.0.1-SNAPSHOT'
> }
> sourceCompatibility = 1.8
> targetCompatibility = 1.8
> repositories {
> mavenCentral()
> }
> dependencies {
> compile("org.codehaus.groovy:groovy:2.4.4")
> testCompile("junit:junit:4.12")
> }
> eclipse {
> classpath {
> containers.remove('org.eclipse.jdt.launching.JRE_CONTAINER')
> containers 'org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8'
> }
> }
> task wrapper(type: Wrapper) {
> gradleVersion = '2.4'
> }
> {code}
> when I run {code}gradle clean build{code}
> then the test fails with the following message.
> {code}
> PersonTest > hashcodeWithoutLongValue FAILED
> java.lang.NullPointerException at PersonTest.groovy:10
> 1 test completed, 1 failed
> :test FAILED
> {code}
> With Groovy 2.4.3 the test passes.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)