Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Provide annotation processor as the separate maven artifact. #41

Closed
foal opened this issue Nov 24, 2017 · 6 comments
Closed

Provide annotation processor as the separate maven artifact. #41

foal opened this issue Nov 24, 2017 · 6 comments

Comments

@foal
Copy link

foal commented Nov 24, 2017

Now GWT project depends on annotation processor and vice versa 'maven-compiler-plugin' has GWT related classes in 'annotationProcessorPaths'

@ibaca
Copy link
Collaborator

ibaca commented Nov 24, 2017

Anyways, GWT does not include the jar in the final output, as it just compiles out as HTML/CSS/JS so... although this might be a good practice in general, in this case, add nothing, especially bc the processor dependencies are shaded so it cannot conflict with other dependencies.

@foal
Copy link
Author

foal commented Nov 26, 2017

It is just suggestion. Now it isn't a real issue, but later it may be a cause of some unpredictable issues in dependency management, so better to think about it.

@hpehl
Copy link
Member

hpehl commented Nov 27, 2017

@foal I don't fully understand the issue. Can you explain what exactly is wrong?

@foal
Copy link
Author

foal commented Nov 27, 2017

Now the annotation processor is in the same project with GWT related classes. Due that the elemento-template jar (and all transitive dependencies) is participating in two different process - code generation and GWT compilation.
The second point - it is not clear that jar has to be included in APT classtath (JDK -processorpath option). To resolve it I will need to check out the sources and found out the module that contains an annotation processor.

@hpehl
Copy link
Member

hpehl commented Dec 7, 2017

IIUC you want to split maven module elemento-template?

  • elemento-template-api containing the classes from package org.jboss.gwt.elemento.template and
  • elemento-template-processor containing the classes from package org.jboss.gwt.elemento.processor

The former would be part of the GWT compilation whereas the latter is only necessary for code generation. This would make it also more obvious which JAR needs to be on the APT classpath.

@foal
Copy link
Author

foal commented Dec 8, 2017

Exactly

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants