Opened 3 years ago

Last modified 3 years ago

#1822 open defect

I2Phex 3.2.8.0.1 standalone will not start properly

Reported by: hummingbird Owned by: zzz
Priority: minor Milestone: undecided
Component: apps/other Version: 0.9.26
Keywords: Cc:
Parent Tickets:

Description

Zzz, thank you for fixing I2Phex 3.2.8.0.1 plugin, it now works for me.

However about the standalone way, there is a other issue that make it not start properly (while v3.2.7.0.0 does).

Note: I have extracted the files from the I2P plugin folder to a empty folder, and used the v3.2.7 'run.sh' file.

Here's the log that I get from the terminal (same issue with a full and a empty '.i2phex' profile folder).

sh run.sh 
java.lang.NoClassDefFoundError: net/i2p/data/DataFormatException
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:264)
	at phex.net.repres.PresentationManager.createInstance(PresentationManager.java:66)
	at phex.net.repres.PresentationManager.getInstance(PresentationManager.java:55)
	at phex.host.CaughtHostsContainer.parseCaughtHostFromLine(CaughtHostsContainer.java:660)
	at phex.host.CaughtHostsContainer.loadHostsFromFile(CaughtHostsContainer.java:530)
	at phex.host.CaughtHostsContainer.initializeCaughtHostsContainer(CaughtHostsContainer.java:146)
	at phex.host.CaughtHostsContainer.<init>(CaughtHostsContainer.java:125)
	at phex.host.HostManager.<init>(HostManager.java:56)
	at phex.servent.Servent.<init>(Servent.java:177)
	at phex.servent.Servent.<clinit>(Servent.java:62)
	at phex.Main.main(Main.java:164)
Caused by: java.lang.ClassNotFoundException: net.i2p.data.DataFormatException
	at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 12 more

Subtickets (add)

Change History (1)

comment:1 Changed 3 years ago by zzz

  • Status changed from new to open

When installed as a plugin, we use the i2p jars from the router. When installed standalone, you have to copy or link to the required i2p jars. We removed those jars from the mtn repo since they will quickly become out of date, you would copy them to thirdparty/i2p before building.

For a standalone setup, copying the phex jars from the plugin dir is fine but a little unorthodox... but you need the i2p jars too.

The jars you need are: i2p.jar, streaming.jar, mstreaming.jar, and jbigi.jar

In my jwebcache post at http://zzz.i2p/topics/2154 I included the following note for standalone, it applies to i2phex also:

Warning: If you link to a running I2P router's jars directly, jwebcache may crash
when the router auto-updates. If you copy the router jars to the jwebcache
directory, you should keep the jars up-to-date after a router update
by stopping jwebcache, re-copying the jars, and restarting jwebcache.

I'll leave this ticket open as this should probably all be documented in the i2phex INSTALL file.

Note: See TracTickets for help on using tickets.