Either disable the test runs on the release profile or make sure that the
test application (the running the instrumentation tests) is also signed
with the same credentials..
> Our projects have following structure
>
> - core (just Java code + JUnit)
> - app (Android code + JUnit)
> - device tests (end to end test)
>
> project build execute fine with clean install, all tests are run.
>
> However when I want to run release with signing some of the test from
> "app"
> module fails with SecurityException, example bellow.
>
>>From what I found on internet it is case of first module being already
> signed and other that is dependent on the first is unsigned.
> Did anyone run into this problem? Is there any solution for this besides
> disabling test on release?
>
> *Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.009 sec
> <<< FAILURE!*
> *initializationError(com.peter.tablet.service.analytics.tasks.TrackPageViewTaskShould)
> Time elapsed: 0.006 sec <<< ERROR!*
> *java.lang.SecurityException: class
> "com.peter.tablet.service.analytics.Analytics"'s signer information does
> not match signer information of other classes in the same package*
> * at java.lang.ClassLoader.checkCerts(ClassLoader.java:806)*
> * at java.lang.ClassLoader.preDefineClass(ClassLoader.java:487)*
> * at java.lang.ClassLoader.defineClassCond(ClassLoader.java:625)*
> * at java.lang.ClassLoader.defineClass(ClassLoader.java:615)*
> * at
> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
> *
> * at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)*
> * at java.net.URLClassLoader.access$000(URLClassLoader.java:58)*
> * at java.net.URLClassLoader$1.run(URLClassLoader.java:197)*
> * at java.security.AccessController.doPrivileged(Native Method)*
> * at java.net.URLClassLoader.findClass(URLClassLoader.java:190)*
> * at java.lang.ClassLoader.loadClass(ClassLoader.java:306)*
> * at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)*
> * at java.lang.ClassLoader.loadClass(ClassLoader.java:247)*
> * at java.lang.Class.getDeclaredFields0(Native Method)*
> * at java.lang.Class.privateGetDeclaredFields(Class.java:2300)*
> * at java.lang.Class.getDeclaredFields(Class.java:1745)*
> * at org.junit.runners.model.TestClass.<init>(TestClass.java:40)*
> * at org.junit.runners.ParentRunner.<init>(ParentRunner.java:65)*
> * at
> org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:59)
> *
> * at
> org.junit.internal.builders.JUnit4Builder.runnerForClass(JUnit4Builder.java:13)
> *
> * at
> org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:57)
> *
> * at
> org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:29)
> *
> * at
> org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:57)
> *
> * at
> org.junit.internal.requests.ClassRequest.getRunner(ClassRequest.java:24)*
> * at
> org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:250)
> *
> * at
> org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
> *
> * at
> org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
> *
> * 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.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
> *
> * at
> org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
> *
> * at
> org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
> *
> * at
> org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
> *
> * at
> org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)*
>
> --
> You received this message because you are subscribed to the Google Groups
> "Maven Android Developers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to
maven-android-deve...@googlegroups.com.
> For more options, visit
https://groups.google.com/groups/opt_out.
>
>
>