[jsword-devel] [JIRA] Updated: (JS-106) Building a project against the jsword snapshots from the maven repository breaks the ClassLoader

DM Smith (JIRA) jira at crosswire.org
Sun Feb 6 15:37:04 MST 2011


     [ http://www.crosswire.org/bugs/browse/JS-106?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

DM Smith updated JS-106:
------------------------

    Affects Version/s: 1.6
        Fix Version/s: See Resolution
          Component/s: build

> Building a project against the jsword snapshots from the maven repository  breaks the ClassLoader
> -------------------------------------------------------------------------------------------------
>
>                 Key: JS-106
>                 URL: http://www.crosswire.org/bugs/browse/JS-106
>             Project: JSword
>          Issue Type: Bug
>          Components: build
>    Affects Versions: 1.6
>            Reporter: Chris Burrell
>            Assignee: DM Smith
>             Fix For: See Resolution
>
>
> When trying to use the JSword jars to install some bible versions, I get a ClassDefNotFoundError which is due to a NullPointerException in NetUtil class.
> During debug, I am able to figure out the reason for the URISyntaxException
> "Illegal character in opaque part at index 22: jar:file:/C:/Documents and" (indicating spaces in the URL)
> The following method in NetUtils returns a null because a URISyntaxException is being caught
>     public static URI toURI(URL url) {
>         try {
>             return new URI(url.toExternalForm());
>         } catch (URISyntaxException e) {
>             return null;
>         }
>     }
> The exception is being caught because of url.toExternalForm() leaving space characters.
> The following stack trace is seen during the test phase of the maven build:
> Caused by: java.lang.ExceptionInInitializerError
>         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.crosswire.jsword.book.Books.autoRegister(Books.java:426)
>         at org.crosswire.jsword.book.Books.initialize(Books.java:407)
>         at org.crosswire.jsword.book.Books.<init>(Books.java:59)
>         at org.crosswire.jsword.book.Books.<clinit>(Books.java:473)
>         at com.tyndalehouse.step.dataloader.loaders.JSwordModuleInstaller.installBible(JSwordModuleInstaller.java:46)
>         at com.tyndalehouse.step.dataloader.loaders.JSwordModuleInstaller.installDefaultModules(JSwordModuleInstaller.java:33)
>         at com.tyndalehouse.step.dataloader.Dataloader.main(Dataloader.java:33)
>         ... 6 more
> Caused by: java.lang.NullPointerException
>         at org.crosswire.common.util.NetUtil.getInputStream(NetUtil.java:415)
>         at org.crosswire.common.util.NetUtil.listByIndexFile(NetUtil.java:544)
>         at org.crosswire.jsword.book.readings.ReadingsBookDriver.getInstalledReadingsSets(ReadingsBookDriver.java:91)
>         at org.crosswire.jsword.book.readings.ReadingsBookDriver.<init>(ReadingsBookDriver.java:50)
>         at org.crosswire.jsword.book.readings.ReadingsBookDriver.<clinit>(ReadingsBookDriver.java:119)

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira



More information about the jsword-devel mailing list