Verifies the integrety of the projects, as builds are executed immediately after a code change was detected. This plan provides no artifiacts (use a nightly build instead).
[formtypes] Use central entry point for registry, fixes NPE on Android
FormFieldRegistry would scan the classpath for registry files. However
this does not work on Android, where it fails with an NPE:
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.security.CodeSource java.security.ProtectionDomain.getCodeSource()' on a null object reference
at org.jivesoftware.smackx.formtypes.FormFieldRegistry.loadFormFieldRegistryEntries(FormFieldRegistry.java:109)
at org.jivesoftware.smackx.formtypes.FormFieldRegistry.<clinit>(FormFieldRegistry.java:56)
at org.jivesoftware.smackx.softwareinfo.form.SoftwareInfoForm.<clinit>(SoftwareInfoForm.java:52)
at java.lang.Class.classForName(Native Method)
at java.lang.Class.forName(Class.java:536)
at org.jivesoftware.smack.SmackInitialization.loadSmackClass(SmackInitialization.java:210)
at org.jivesoftware.smack.SmackInitialization.parseClassesToLoad(SmackInitialization.java:190)
at org.jivesoftware.smack.SmackInitialization.processConfigFile(SmackInitialization.java:164)
at org.jivesoftware.smack.initializer.UrlInitializer.initialize(UrlInitializer.java:69)
at org.jivesoftware.smack.SmackInitialization.loadSmackClass(SmackInitialization.java:229)
at org.jivesoftware.smack.SmackInitialization.parseClassesToLoad(SmackInitialization.java:190)
at org.jivesoftware.smack.SmackInitialization.processConfigFile(SmackInitialization.java:167)
at org.jivesoftware.smack.SmackInitialization.processConfigFile(SmackInitialization.java:154)
at org.jivesoftware.smack.SmackInitialization.<clinit>(SmackInitialization.java:103)
at org.jivesoftware.smack.Smack.getVersion(Smack.java:51)
at net.java.sip.communicator.impl.protocol.jabber.ProtocolProviderServiceJabberImpl.loadJabberServiceClasses(ProtocolProviderServiceJabberImpl.java:3144)
at net.java.sip.communicator.impl.protocol.jabber.ProtocolProviderServiceJabberImpl.<clinit>(ProtocolProviderServiceJabberImpl.java:643)
at net.java.sip.communicator.impl.protocol.jabber.ProtocolProviderFactoryJabberImpl.createService(ProtocolProviderFactoryJabberImpl.java:117)
at net.java.sip.communicator.service.protocol.ProtocolProviderFactory.loadAccount(ProtocolProviderFactory.java:945)
at net.java.sip.communicator.service.protocol.AccountManager.doLoadStoredAccounts(AccountManager.java:145)
at net.java.sip.communicator.service.protocol.AccountManager.loadStoredAccounts(AccountManager.java:297)
at net.java.sip.communicator.service.protocol.AccountManager.runInLoadStoredAccountsThread(AccountManager.java:391)
at net.java.sip.communicator.service.protocol.AccountManager.-$$Nest$mrunInLoadStoredAccountsThread(Unknown Source:0)
at net.java.sip.communicator.service.protocol.AccountManager$1.run(AccountManager.java:328)
Instead, we have to use a common entry point to load the field
registry files.