Hi again,

Now I experience another problem when I try to run my test:

java.lang.NoSuchMethodError: org.jboss.forge.furnace.manager.impl.AddonManagerImpl.<init>(Lorg/jboss/forge/furnace/Furnace;Lorg/jboss/forge/furnace/manager/spi/AddonDependencyResolver;Z)V
at org.jboss.forge.arquillian.ForgeDeployableContainer.deploy(ForgeDeployableContainer.java:108)
at org.jboss.arquillian.container.impl.client.container.ContainerDeployController$3.call(ContainerDeployController.java:161)
at org.jboss.arquillian.container.impl.client.container.ContainerDeployController$3.call(ContainerDeployController.java:128)
at org.jboss.arquillian.container.impl.client.container.ContainerDeployController.executeOperation(ContainerDeployController.java:271)
at org.jboss.arquillian.container.impl.client.container.ContainerDeployController.deploy(ContainerDeployController.java:127)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)

I tried to run the tests of another addon (javaee) and all of them fail with the same error. Do you have an idea how can I fix the issue? Maybe I should add a maven repository containing a later version of the arquillian-furnace-classpath artifact?

I have attached my settings.xml.

Cheers,
Ivan


On Tue, Sep 10, 2013 at 7:55 PM, Lincoln Baxter, III <lincolnbaxter@gmail.com> wrote:
Just because we think it's a good design approach - for the addons that we maintain specifically - so that people don't try to depend on impl classes we don't want them to see or use :) We don't enforce any kind of package restriction like OSGi does, so you are free to do "whatever the hell you want." Clear? :)

So by no means is this a requirement. The *only* requirement is that you have a JAR classified as "forge-addon", where other addons may be included as dependencies. That's it :) You can lay out your project however you like. You can have 1 module, 50 modules, it's all up to you.


On Tue, Sep 10, 2013 at 11:54 AM, Ivan St. Ivanov <ivan.st.ivanov@gmail.com> wrote:
Thanks a lot, folks! I'll try that.

BTW, I was very suspicious about having separate projects for different things from the beginning. I even shared my opinion one night (afternoon for you). Is it done because of technical requirements (Weld, Furnace) or just because you think that this is a good design approach?

Cheers,
Ivan


On Tue, Sep 10, 2013 at 5:08 PM, Lincoln Baxter, III <lincolnbaxter@gmail.com> wrote:
I've attached a working update to your code:

The reason this occurred is because you did not specify addon dependencies in your addon/pom.xml, you only referenced them in your sub-projects.

Actually we considered allowing this to work from any sub-dependency of the addon, but... im not sure that's a good idea. I like the "do what I expect" concept, but I'm not sure of the consequences of this. Perhaps now is a good time to discuss this since our first user has banged their head against this issue.

Additionally, your test case needed to reference the maven addon, because otherwise there will be no implementation of the projects API and the project returned from projectFactory would be null.


On Tue, Sep 10, 2013 at 10:05 AM, Lincoln Baxter, III <lincolnbaxter@gmail.com> wrote:
Part of your problem is this:

Sep 10, 2013 9:56:58 AM org.jboss.weld.bootstrap.WeldBootstrap startContainer

INFO: WELD-000101 Transactional services not available. Injection of @Inject UserTransaction not available. Transactional observers will be invoked synchronously.

Sep 10, 2013 9:56:58 AM org.jboss.weld.bootstrap.BeanDeployer loadAnnotatedType

INFO: WELD-000119 Not generating any bean definitions from org.jboss.forge.addon.git.gitignore.GitIgnoreConfig because of underlying class loading error: Type Lorg.jboss.forge.addon.configuration.ConfigurationFactory; not found.  If this is unexpected, enable DEBUG logging to see the full error.

Sep 10, 2013 9:56:58 AM org.jboss.weld.bootstrap.BeanDeployer loadAnnotatedType

INFO: WELD-000119 Not generating any bean definitions from org.jboss.forge.addon.git.ui.AbstractGitCommand because of underlying class loading error: Type org.jboss.forge.addon.ui.metadata.UICommandMetadata not found.  If this is unexpected, enable DEBUG logging to see the full error.

Sep 10, 2013 9:56:58 AM org.jboss.weld.bootstrap.BeanDeployer loadClass

INFO: WELD-000119 Not generating any bean definitions from org.jboss.forge.addon.git.ui.GitCheckoutCommand because of underlying class loading error: Type org.jboss.forge.addon.ui.UICommand not found.  If this is unexpected, enable DEBUG logging to see the full error.

Sep 10, 2013 9:56:58 AM org.jboss.weld.bootstrap.BeanDeployer loadAnnotatedType

INFO: WELD-000119 Not generating any bean definitions from org.jboss.forge.addon.git.ui.GitCloneCommand because of underlying class loading error: Type org.jboss.forge.addon.ui.metadata.UICommandMetadata not found.  If this is unexpected, enable DEBUG logging to see the full error.

Sep 10, 2013 9:56:58 AM org.jboss.weld.bootstrap.BeanDeployer loadAnnotatedType

INFO: WELD-000119 Not generating any bean definitions from org.jboss.forge.addon.git.ui.GitIgnoreAddPatternCommand because of underlying class loading error: Type org.jboss.forge.addon.ui.metadata.UICommandMetadata not found.  If this is unexpected, enable DEBUG logging to see the full error.

Sep 10, 2013 9:56:58 AM org.jboss.weld.bootstrap.BeanDeployer loadClass

INFO: WELD-000119 Not generating any bean definitions from org.jboss.forge.addon.git.ui.GitIgnoreCreateCommand$GitIgnoreTemplateCompleter because of underlying class loading error: Type org.jboss.forge.addon.ui.input.UICompleter not found.  If this is unexpected, enable DEBUG logging to see the full error.

Sep 10, 2013 9:56:58 AM org.jboss.weld.bootstrap.BeanDeployer loadAnnotatedType

INFO: WELD-000119 Not generating any bean definitions from org.jboss.forge.addon.git.ui.GitIgnoreCreateCommand because of underlying class loading error: Type org.jboss.forge.addon.ui.metadata.UICommandMetadata not found.  If this is unexpected, enable DEBUG logging to see the full error.

Sep 10, 2013 9:56:58 AM org.jboss.weld.bootstrap.BeanDeployer loadAnnotatedType

INFO: WELD-000119 Not generating any bean definitions from org.jboss.forge.addon.git.ui.GitIgnoreEditCommand because of underlying class loading error: Type org.jboss.forge.addon.ui.metadata.UICommandMetadata not found.  If this is unexpected, enable DEBUG logging to see the full error.

Sep 10, 2013 9:56:58 AM org.jboss.weld.bootstrap.BeanDeployer loadAnnotatedType

INFO: WELD-000119 Not generating any bean definitions from org.jboss.forge.addon.git.ui.GitIgnoreListPatternsCommand because of underlying class loading error: Type org.jboss.forge.addon.ui.metadata.UICommandMetadata not found.  If this is unexpected, enable DEBUG logging to see the full error.

Sep 10, 2013 9:56:58 AM org.jboss.weld.bootstrap.BeanDeployer loadAnnotatedType

INFO: WELD-000119 Not generating any bean definitions from org.jboss.forge.addon.git.ui.GitIgnoreListTemplatesCommand because of underlying class loading error: Type org.jboss.forge.addon.ui.metadata.UICommandMetadata not found.  If this is unexpected, enable DEBUG logging to see the full error.

Sep 10, 2013 9:56:58 AM org.jboss.weld.bootstrap.BeanDeployer loadClass

INFO: WELD-000119 Not generating any bean definitions from org.jboss.forge.addon.git.ui.GitIgnoreRemovePatternCommand$GitIgnorePatternCompleter because of underlying class loading error: Type org.jboss.forge.addon.ui.input.UICompleter not found.  If this is unexpected, enable DEBUG logging to see the full error.

Sep 10, 2013 9:56:58 AM org.jboss.weld.bootstrap.BeanDeployer loadAnnotatedType

INFO: WELD-000119 Not generating any bean definitions from org.jboss.forge.addon.git.ui.GitIgnoreRemovePatternCommand because of underlying class loading error: Type org.jboss.forge.addon.ui.metadata.UICommandMetadata not found.  If this is unexpected, enable DEBUG logging to see the full error.

Sep 10, 2013 9:56:58 AM org.jboss.weld.bootstrap.BeanDeployer loadClass

INFO: WELD-000119 Not generating any bean definitions from org.jboss.forge.addon.git.ui.GitIgnoreSetupCommand because of underlying class loading error: Type org.jboss.forge.addon.ui.UICommand not found.  If this is unexpected, enable DEBUG logging to see the full error.

Sep 10, 2013 9:56:58 AM org.jboss.weld.bootstrap.BeanDeployer loadAnnotatedType

INFO: WELD-000119 Not generating any bean definitions from org.jboss.forge.addon.git.ui.GitIgnoreUpdateRepoCommand because of underlying class loading error: Type org.jboss.forge.addon.ui.metadata.UICommandMetadata not found.  If this is unexpected, enable DEBUG logging to see the full error.

Sep 10, 2013 9:56:58 AM org.jboss.weld.bootstrap.BeanDeployer loadClass

INFO: WELD-000119 Not generating any bean definitions from org.jboss.forge.addon.git.ui.LsGitIgnoreCommand because of underlying class loading error: Type org.jboss.forge.addon.ui.UICommand not found.  If this is unexpected, enable DEBUG logging to see the full error.

Sep 10, 2013 9:56:58 AM org.jboss.forge.furnace.impl.addons.AddonRunnable run



On Tue, Sep 10, 2013 at 8:57 AM, Ivan St. Ivanov <ivan.st.ivanov@gmail.com> wrote:
Yes, I have it in a separate branch. As always, I create a branch with the JIRA issue


On Tue, Sep 10, 2013 at 3:45 PM, George Gastaldi <ggastald@redhat.com> wrote:
Do you have this code in a separate branch? I think it's easier for us to test and provide patches if necessary.
I noticed that you need a package-info.java in the addon project (It is now fixed in Alpha12).



On 09/10/2013 08:27 AM, Ivan St. Ivanov wrote:
So? Can I help somehow?


On Mon, Sep 9, 2013 at 8:09 PM, George Gastaldi <ggastald@redhat.com> wrote:
The configuration looks ok. I may be missing something

George Gastaldi | Senior Software Engineer 
JBoss Forge Team
Red Hat


-------- Original Message --------
Subject: Git tools
Date: Mon, 9 Sep 2013 18:34:05 +0300
From: Ivan St. Ivanov <ivan.st.ivanov@gmail.com>
To: George Gastaldi <ggastald@redhat.com>


Hey Gastaldi,

I have attached an archive of the git-tools addon together with a small change in the parent pom (the jgit version).

As I wrote in the chat, I get the following error ATM:

SEVERE: Failed to start addon [org.jboss.forge.addon:git-tools,2.0.0-SNAPSHOT] with classloader [ModuleClassLoader for Module "org.jboss.forge.addon.git-tools:2.0.0-SNAPSHOT_384942ba-8666-45c0-ae26-3c918c8f6b29" from AddonModuleLoader]
org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for type [GitIgnoreConfig] with qualifiers [@Default] at injection point [[BackedAnnotatedField] @Inject private org.jboss.forge.addon.git.facet.GitIgnoreFacetImpl.config]
at org.jboss.weld.bootstrap.Validator.validateInjectionPointForDeploymentProblems(Validator.java:405)
at org.jboss.weld.bootstrap.Validator.validateInjectionPoint(Validator.java:327)
at org.jboss.weld.bootstrap.Validator.validateGeneralBean(Validator.java:178)
at org.jboss.weld.bootstrap.Validator.validateRIBean(Validator.java:209)
at org.jboss.weld.bootstrap.Validator.validateBean(Validator.java:521)
at org.jboss.weld.bootstrap.Validator.validateBeans(Validator.java:507)
at org.jboss.weld.bootstrap.Validator.validateDeployment(Validator.java:482)
at org.jboss.weld.bootstrap.WeldBootstrap.validateBeans(WeldBootstrap.java:538)
at org.jboss.weld.bootstrap.api.helpers.ForwardingBootstrap.validateBeans(ForwardingBootstrap.java:75)
at org.jboss.weld.environment.se.Weld.initialize(Weld.java:144)
at org.jboss.forge.furnace.container.cdi.lifecycle.WeldAddonLifecycleProvider.start(WeldAddonLifecycleProvider.java:59)
at org.jboss.forge.furnace.impl.addons.AddonRunnable$1.call(AddonRunnable.java:77)
at org.jboss.forge.furnace.impl.addons.AddonRunnable$1.call(AddonRunnable.java:71)
at org.jboss.forge.furnace.util.ClassLoaders.executeIn(ClassLoaders.java:34)
at org.jboss.forge.furnace.impl.addons.AddonRunnable.run(AddonRunnable.java:70)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)

Thanks,
Ivan



_______________________________________________
forge-dev mailing list
forge-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/forge-dev



_______________________________________________
forge-dev mailing list
forge-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/forge-dev


_______________________________________________
forge-dev mailing list
forge-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/forge-dev


_______________________________________________
forge-dev mailing list
forge-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/forge-dev



--
Lincoln Baxter, III
http://ocpsoft.org
"Simpler is better."



--
Lincoln Baxter, III
http://ocpsoft.org
"Simpler is better."

_______________________________________________
forge-dev mailing list
forge-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/forge-dev


_______________________________________________
forge-dev mailing list
forge-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/forge-dev



--
Lincoln Baxter, III
http://ocpsoft.org
"Simpler is better."

_______________________________________________
forge-dev mailing list
forge-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/forge-dev