[QFJ-884] quickfixj-messages-fix44 is including quickfixj-messages-all Created: 25/Mar/16 Updated: 13/Dec/16 Resolved: 30/Apr/16 |
|
Status: | Closed |
Project: | QuickFIX/J |
Component/s: | Engine, Message Generation |
Affects Version/s: | 1.6.2 |
Fix Version/s: | 1.6.3 |
Type: | Bug | Priority: | Major |
Reporter: | Guido Medina | Assignee: | Guido Medina |
Resolution: | Fixed | Votes: | 0 |
Labels: | QuickfixJ |
Description |
Dependency quickfixj-messages-fix44 is including quickfixj-messages-all, this wasn't like that before so I wonder if the generator was broken during latest commits. |
Comments |
Comment by Guido Medina [ 25/Mar/16 ] |
I had to do this to fix it when I noticed, kind of heavy dependency to add all messages (21mb) {{ </dependency> <dependency> <groupId>org.quickfixj</groupId> <artifactId>quickfixj-messages-fix44</artifactId> <version>${quickfixj.version} </version> |
Comment by Guido Medina [ 26/Mar/16 ] |
The following commits totally went back in time with the pom composition:
First it changed the distribution from bundle to jar and secondly it introduced quickfixj-messages-all as a dependency of every individual quickfixj-message-fixXX dependency, I tried to fix it but so many things were changed that I honestly don't know what to do. |
Comment by Guido Medina [ 26/Mar/16 ] |
I'm working on a PR but it will need more attention later as I think the poms were a bit screwed up, maybe I'm wrong. |
Comment by ManuReno [ 29/Mar/16 ] |
Hi, Dependancy to message-all has been introduced in Although this dependancy is not a maven best practice, the jar themselves should be OK thanks to the following block in the messagexx/pom.xml (example for fix44): <plugin> <artifactId>maven-jar-plugin</artifactId> <groupId>org.apache.maven.plugins</groupId> <version>2.6</version> <configuration> <classesDirectory>${project.basedir}/../quickfixj-messages-all/target/classes/</classesDirectory> <includes> <include>FIX44.xml</include> <include>FIX44.modified.xml</include> <include>quickfix/fix44/**</include> <include>quickfix/field/**</include> </includes> <archive> <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile> </archive> </configuration> </plugin> Looking again a this, a dependancy to the core module may nevertheless replace the dependancy to message-all if the <classesDirectory> of the jar plugin configuration is also changed to point to : <classesDirectory>${project.basedir}/../../quickfixj-core/target/classes/</classesDirectory> The code generation may then also be removed from the message-all, thus ensuring that messages are compiled only once and this would also save build time. |