| 
 I was playing with up-to-date checks on non-file properties and generated this error. This happened after I first tried an object input where I had forgotten to implement equals/hashcode. I then added them to the class, but because I had not added a serialVersionUID field, the additional methods caused a InvalidClassException: local class incompatible: exception. 
Given that this happened within the up-to-date check, it seems like this should be caught and the up-to-date simply fail, triggering a rebuild, instead of the whole build stopping, as an incompatible class is by definition different, and hence not up to date. 
FAILURE: Build aborted because of an internal error. 
- What went wrong:
 
Build aborted because of an unexpected internal error. Please file an issue at: http://www.gradle.org. 
 
- Try:
 
Run with --debug option to get additional debug info. 
 
- Exception is:
 
org.gradle.api.UncheckedIOException: Could not read entry ':gee:generateXmlConfig' from cache taskArtifacts.bin (/export/home/crotwell/dev/seis/.gradle/1.0-milestone-7/taskArtifacts/taskArtifacts.bin). 
at org.gradle.cache.internal.btree.BTreePersistentIndexedCache.get(BTreePersistentIndexedCache.java:127) 
at org.gradle.cache.internal.MultiProcessSafePersistentIndexedCache$1.create(MultiProcessSafePersistentIndexedCache.java:38) 
at org.gradle.cache.internal.DefaultFileLockManager$DefaultFileLock.readFromFile(DefaultFileLockManager.java:130) 
at org.gradle.cache.internal.DefaultCacheAccess$UnitOfWorkFileAccess.readFromFile(DefaultCacheAccess.java:281) 
at org.gradle.cache.internal.MultiProcessSafePersistentIndexedCache.get(MultiProcessSafePersistentIndexedCache.java:36) 
at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
at java.lang.reflect.Method.invoke(Method.java:597) 
at org.gradle.listener.LazyCreationProxy$LazyInvocationHandler.invoke(LazyCreationProxy.java:49) 
at $Proxy18.get(Unknown Source) 
at org.gradle.api.internal.changedetection.CacheBackedTaskHistoryRepository.loadHistory(CacheBackedTaskHistoryRepository.java:89) 
at org.gradle.api.internal.changedetection.CacheBackedTaskHistoryRepository.getHistory(CacheBackedTaskHistoryRepository.java:43) 
at org.gradle.api.internal.changedetection.DefaultTaskArtifactStateRepository.getStateFor(DefaultTaskArtifactStateRepository.java:48) 
at org.gradle.api.internal.changedetection.ShortCircuitTaskArtifactStateRepository.getStateFor(ShortCircuitTaskArtifactStateRepository.java:38) 
at org.gradle.api.internal.changedetection.FileCacheBroadcastTaskArtifactStateRepository.getStateFor(FileCacheBroadcastTaskArtifactStateRepository.java:31) 
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:42) 
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:57) 
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:41) 
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:51) 
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:52) 
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:42) 
at org.gradle.api.internal.AbstractTask.executeWithoutThrowingTaskFailure(AbstractTask.java:243) 
at org.gradle.execution.DefaultTaskGraphExecuter.executeTask(DefaultTaskGraphExecuter.java:192) 
at org.gradle.execution.DefaultTaskGraphExecuter.doExecute(DefaultTaskGraphExecuter.java:177) 
at org.gradle.execution.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:83) 
at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:36) 
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61) 
at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter.java:23) 
at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter.java:67) 
at org.gradle.api.internal.changedetection.TaskCacheLockHandlingBuildExecuter$1.run(TaskCacheLockHandlingBuildExecuter.java:31) 
at org.gradle.cache.internal.DefaultCacheAccess$1.create(DefaultCacheAccess.java:111) 
at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:126) 
at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:109) 
at org.gradle.cache.internal.DefaultPersistentDirectoryStore.useCache(DefaultPersistentDirectoryStore.java:103) 
at org.gradle.api.internal.changedetection.DefaultTaskArtifactStateCacheAccess.useCache(DefaultTaskArtifactStateCacheAccess.java:79) 
at org.gradle.api.internal.changedetection.TaskCacheLockHandlingBuildExecuter.execute(TaskCacheLockHandlingBuildExecuter.java:29) 
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61) 
at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter.java:23) 
at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter.java:67) 
at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32) 
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61) 
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:54) 
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:152) 
at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:108) 
at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:76) 
at org.gradle.launcher.cli.RunBuildAction.execute(RunBuildAction.java:42) 
at org.gradle.launcher.cli.RunBuildAction.execute(RunBuildAction.java:28) 
at org.gradle.launcher.exec.ExceptionReportingAction.execute(ExceptionReportingAction.java:32) 
at org.gradle.launcher.exec.ExceptionReportingAction.execute(ExceptionReportingAction.java:21) 
at org.gradle.launcher.cli.CommandLineActionFactory$WithLoggingAction.execute(CommandLineActionFactory.java:238) 
at org.gradle.launcher.cli.CommandLineActionFactory$WithLoggingAction.execute(CommandLineActionFactory.java:222) 
at org.gradle.launcher.Main.doAction(Main.java:48) 
at org.gradle.launcher.exec.EntryPoint$1.execute(EntryPoint.java:53) 
at org.gradle.launcher.exec.EntryPoint$1.execute(EntryPoint.java:51) 
at org.gradle.launcher.exec.Execution.execute(Execution.java:28) 
at org.gradle.launcher.exec.EntryPoint.run(EntryPoint.java:39) 
at org.gradle.launcher.Main.main(Main.java:39) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
at java.lang.reflect.Method.invoke(Method.java:597) 
at org.gradle.launcher.ProcessBootstrap.runNoExit(ProcessBootstrap.java:51) 
at org.gradle.launcher.ProcessBootstrap.run(ProcessBootstrap.java:33) 
at org.gradle.launcher.GradleMain.main(GradleMain.java:24) 
Caused by: java.io.InvalidClassException: edu.sc.seis.launch4j.Launch4jPluginExtension; local class incompatible: stream classdesc serialVersionUID = -7204265802869386416, local class serialVersionUID = 2336965903607220777 
at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:562) 
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1583) 
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496) 
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1732) 
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) 
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351) 
at java.util.HashMap.readObject(HashMap.java:1030) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
at java.lang.reflect.Method.invoke(Method.java:597) 
at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974) 
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849) 
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) 
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) 
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947) 
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871) 
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) 
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) 
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351) 
at java.util.ArrayList.readObject(ArrayList.java:593) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
at java.lang.reflect.Method.invoke(Method.java:597) 
at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974) 
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849) 
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) 
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) 
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947) 
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871) 
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) 
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) 
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351) 
at org.gradle.cache.DefaultSerializer.read(DefaultSerializer.java:43) 
at org.gradle.cache.internal.btree.BTreePersistentIndexedCache$DataBlock.getValue(BTreePersistentIndexedCache.java:654) 
at org.gradle.cache.internal.btree.BTreePersistentIndexedCache.get(BTreePersistentIndexedCache.java:119) 
... 63 more 
 
BUILD FAILED 
 
 |