iotdb icon indicating copy to clipboard operation
iotdb copied to clipboard

modify POM files

Open jixuan1989 opened this issue 6 years ago • 4 comments

  • [x] 1. remove the header description of the parent pom file. (YCSB and others)

  • [x] 2. The parent pom in the root has to be set to “org.apache:apache:21”

  • [x] 3. remove developers section from pom files

  • [x] 4. re-check all the profiles. If they are duplicated with apache:21 parent pom, remove them.

Maybe it’s worth configuring the maven-javadoc-plugin in a pluginManagement section of the root to exclude them in general and get rid of the “release” profiles in general

  • remove nexus-staging-maven-plugin
  • [x] 5. change the name of <project.version>0.8.0-SNAPSHOT</project.version> from root pom.xml (Do not use the default parameter project.version)

  • [x] 6. Replace the antrun plugin with the dependencies plugin for copying the libs to the iotdb/lib directory (antrun is highly deprecated)

  • [x] 7. No need to re-define the license, scm, distribution management in sub-modules

  • [ ] 8. Try to unify the plugin definitions in the root pom.

  • [x] 9. You are relying on Java 8 so the Jodatime library is included in general there is no need to use the external library and the included classes could be used)

  • [ ] 10. generate a -with-dependencies.jar by assembly plugin

  • [x] 11. remove iotdb/iotdb/src/main/resources/META-INF/MANIFEST.MF

  • [x] 12. check the dependency of antlr3

You have a dependency on the antlr3 maven plugin. Instead you should depend on the antlr-runtime artifact that matches your antlr3 version.

  • [ ] 13. remove kvmatch-iotdb dependency. @kr11 please ask the corresponding person.

  • [x] 14. JDBC pom: You are adding a “interface/thrift” directory to the sources, but that doesn’t exist.

  • [x] 15. Move the interfaces thirft files to “src/main/thrift” and have the code generated on every build to “target/generated-sources” (default)

  • [x] 16. TsFile pom: You are adding a “interface/thrift” directory to the sources, but that doesn’t exist.

  • [x] 17. Spark module: remove tsfile data file.

jixuan1989 avatar Dec 12 '18 00:12 jixuan1989

especially, Chris says,

do not check in the generated code.

If you have any questions, ask in the mail list.

jixuan1989 avatar Dec 12 '18 00:12 jixuan1989

补充剩下邮件的内容

  • [ ] 18. 所有非lib的类加上Apache的声明。

All non-binary files need the ASF header

  • [ ] 19. 现有pom里面的release插件和Apache release 冲突
  • You are defining a “release” profile which is obviously intended for releasing. This will not apply as apache releases are performed with the “apache-release” profile. So if important stuff is to be done here (it actually shouldn’t) * From a quick look all defined there is also done by the profile defined in the “apache-release” profile in the “apache” parent pom. So all except the exclusion for package names including “thrift” could simply be removed. (Maybe it’s worth configuring the maven-javadoc-plugin in a pluginManagement section of the root to exclude them in general and get rid of the “release” profiles in general) * Especially the staging part has to be removed as you will be staging to repository.apache.org instead of the oss sonatype repo.
  • [ ] 20. 不用assembly拆件打打jar包。

I wouldn’t produce fat jars (using the assembly plugin) as this bundles classes in to a library that might be used in another application that has dependencies to the same libraries but in a different version … trust me … these are the worst problems to track down.

  • [ ] 21. kvmatch

MyXOF avatar Dec 12 '18 09:12 MyXOF

@jixuan1989 How do you think about KV-match integration? Remove for now or what? Perhaps we need a discussion.

wujysh avatar Dec 13 '18 04:12 wujysh

@MyXOF can you double-check all of these?

jixuan1989 avatar Dec 21 '18 02:12 jixuan1989