Having problems trying to create a simple embedded merlin app. Took the sample embedded appliciton and modified slightly.
Currently get the following problem rg.apache.avalon.repository.RepositoryException: Unable to establish a factory for the supplied artifact: artifact: artifact:merlin/merlin-impl#3.3-SNAPSHOT build: 20040401.041549 factory: org.apache.avalon.merlin.impl.DefaultFactory source: file:/H:/merlin/system/merlin/jars/merlin-impl-3.3-SNAPSHOT.jar repository: H:\merlin\system, http://www.dpml.net/, http://www.ibiblio.org/maven/ at org.apache.avalon.repository.main.DefaultBuilder.<init>(DefaultBuilder.java: 265) at org.apache.avalon.repository.main.DefaultBuilder.<init>(DefaultBuilder.java: 210) at org.apache.avalon.repository.main.DefaultInitialContext.newBuilder(DefaultIn itialContext.java:318) at example.app.MerlinStandAlone.main(MerlinStandAlone.java:51) Caused by: java.lang.NoClassDefFoundError: org/apache/avalon/composition/model/DeploymentModel at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:1590) at java.lang.Class.getConstructor0(Class.java:1762) at java.lang.Class.getConstructor(Class.java:1002) at org.apache.avalon.repository.main.AbstractBuilder.createDelegate(AbstractBui lder.java:93) at org.apache.avalon.repository.main.DefaultBuilder.<init>(DefaultBuilder.java: 252) ... 3 more The libraries I include are a.. zip:///[H%|/merlin/system/merlin/jars/merlin-impl-3.3-SNAPSHOT.jar] b.. zip:///[H%|/merlin/system/avalon-repository/jars/avalon-repository-main-2.0. 0.jar] c.. zip:///[H%|/merlin/system/avalon-repository/jars/avalon-repository-util-2.0. 0.jar] d.. zip:///[H%|/merlin/system/avalon-composition/jars/avalon-composition-impl-2. 0-SNAPSHOT.jar] e.. zip:///[H%|/merlin/system/merlin/jars/merlin-api-3.3-SNAPSHOT.jar] f.. zip:///[H%|/merlin/system/merlin/jars/merlin-cli-3.3.0.jar] g.. zip:///[H%|/merlin/system/avalon-composition/jars/avalon-composition-api-2.0 -SNAPSHOT.jar] h.. zip:///[H%|/merlin/system/avalon-composition/jars/avalon-composition-spi-2.0 -SNAPSHOT.jar] Sample Code: package example.app; import java.io.File; import java.util.Map; import org.apache.avalon.repository.Artifact; import org.apache.avalon.repository.provider.Builder; import org.apache.avalon.repository.provider.Factory; import org.apache.avalon.repository.provider.InitialContextFactory; import org.apache.avalon.repository.provider.InitialContext; import org.apache.avalon.repository.main.DefaultInitialContextFactory; import org.apache.avalon.repository.Artifact; import org.apache.avalon.merlin.Kernel; public class MerlinStandAlone { public static void main( String[] args ) throws Exception { InitialContextFactory initial = new DefaultInitialContextFactory( "merlin" ); File home = initial.getHomeDirectory(); initial.setCacheDirectory( new File( home, "system" ) ); InitialContext context = initial.createInitialContext(); String spec = "artifact:merlin/merlin-impl#3.3-SNAPSHOT"; Artifact artifact = Artifact.createArtifact( spec ); Builder builder = context.newBuilder( artifact ); Factory factory = builder.getFactory(); Map criteria = factory.createDefaultCriteria(); criteria.put( "merlin.debug", "true" ); criteria.put( "merlin.info", "true" ); //factory.create( criteria ); // --> (C) Kernel kernel = (Kernel)factory.create( criteria ); // --> (B) kernel.startup(); // --> (A) } } If I replace lines (A) and (B) I get the following which seems works, but don't undertstand why it does not work with lines (A) and (B) when I'm creating a kernel object directly. With line (A) uncommented I get the following D:\JBuilder9\jdk1.4\bin\javaw -classpath "H:\dev\example\example\classes;H:\merlin\system\avalon-repository\jars\aval on-repository-main-2.0.0.jar;H:\merlin\system\avalon-repository\jars\avalon- repository-util-2.0.0.jar;D:\JBuilder9\jdk1.4\demo\jfc\Java2D\Java2Demo.jar; D:\JBuilder9\jdk1.4\demo\plugin\jfc\Java2D\Java2Demo.jar;D:\JBuilder9\jdk1.4 \jre\lib\charsets.jar;D:\JBuilder9\jdk1.4\jre\lib\ext\dnsns.jar;D:\JBuilder9 \jdk1.4\jre\lib\ext\ldapsec.jar;D:\JBuilder9\jdk1.4\jre\lib\ext\localedata.j ar;D:\JBuilder9\jdk1.4\jre\lib\ext\sunjce_provider.jar;D:\JBuilder9\jdk1.4\j re\lib\im\indicim.jar;D:\JBuilder9\jdk1.4\jre\lib\jaws.jar;D:\JBuilder9\jdk1 .4\jre\lib\jce.jar;D:\JBuilder9\jdk1.4\jre\lib\jsse.jar;D:\JBuilder9\jdk1.4\ jre\lib\rt.jar;D:\JBuilder9\jdk1.4\jre\lib\sunrsasign.jar;D:\JBuilder9\jdk1. 4\lib\dt.jar;D:\JBuilder9\jdk1.4\lib\htmlconverter.jar;D:\JBuilder9\jdk1.4\l ib\tools.jar" -Dxmerlin.debug=true -Dxmerlin.server example.app.MerlinStandAlone [DEBUG ] (kernel.logger): logging system established [DEBUG ] (kernel.logger): adding category [kernel] [DEBUG ] (kernel): logging system established [DEBUG ] (kernel): repository established: C:\Documents and Settings\Administrator\.avalon\repository, http://www.dpml.net/, http://www.ibiblio.org/maven/ [DEBUG ] (kernel.logger): adding category [kernel] [INFO ] (kernel): info report ----------------------------------------------------------- Merlin Kernel Environment Listing ----------------------------------------------------------- ${user.dir} == H:\dev\example\example ${user.home} == C:\Documents and Settings\Administrator ${avalon.repository.cache} == H:\merlin\system ${avalon.repository.online} == true ${avalon.repository.hosts} == http://www.dpml.net,http://www.ibiblio.org/maven ${merlin.lang} == null ${merlin.home} == H:\merlin ${merlin.system} == H:\merlin\system ${merlin.config} == H:\merlin\config ${merlin.kernel} == file:/H:/merlin/config/kernel.xml ${merlin.logging.implementation} == artifact:avalon-logging/avalon-logkit-impl#1.0-SNAPSHOT ${merlin.logging.config} == null ${merlin.runtime} == artifact:avalon-activation/avalon-activation-impl#2.0-SNAPSHOT ${merlin.override} == null ${merlin.dir} == H:\dev\example\example ${merlin.temp} == C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp ${merlin.context} == H:\dev\example\example\home ${merlin.anchor} == H:\dev\example\example ${merlin.info} == true ${merlin.debug} == true ${merlin.audit} == false ${merlin.server} == true ${merlin.autostart} == true ${merlin.code.security.enabled} == false ${merlin.deployment.timeout} == 1000 ${merlin.repository} == C:\Documents and Settings\Administrator\.avalon\repository ${merlin.repository.hosts} == http://www.dpml.net/,http://www.ibiblio.org/maven/ ${merlin.deployment} == ----------------------------------------------------------- [INFO ] (kernel): building application model [DEBUG ] (kernel.logger): adding root category [DEBUG ] (kernel.logger): adding root category [DEBUG ] (kernel.logger): adding root category [DEBUG ] (classloader): base: ${user.dir} [DEBUG ] (classloader): classpath: [DEBUG ] (classloader.types): type install count: 0 [DEBUG ] (kernel): state: initializing [DEBUG ] (kernel): kernel established [DEBUG ] (kernel): state: initialized [INFO ] (kernel): install phase [DEBUG ] (kernel): customize phase [DEBUG ] (kernel): startup phase [DEBUG ] (kernel): application assembly [DEBUG ] (kernel): state: assembly [DEBUG ] (): assembly phase [DEBUG ] (kernel): application deployment [DEBUG ] (kernel): state: deployment [DEBUG ] (): commissioner disposal [DEBUG ] (): commissioning thread started [DEBUG ] (kernel): state: started The libraries I include to get (A) to work are /merlin/system/avalon-repository/jars/avalon-repository-main-2.0.0.jar] merlin/system/avalon-repository/jars/avalon-repository-util-2.0.0.jar] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
