3

I forked ELKI from https://github.com/elki-project because I want to keep up to date with the latest development status while making my own changes and additions to the source (which I will possibly provide via pull request if it's sensible).

I followed the instructions in the README.md to package it with mvn package but there was no .jar created in elki/target/ - when checking out the release0.7.1 branch, it worked and I could start the minigui with java -cp elki-0.7.1.jar de.lmu.ifi.dbs.elki.application.ELKILauncher. Is there a recommended way to try out the latest changes on the master?

  • 1
    hey johannes are you able to build it? i am always getting error: https://stackoverflow.com/questions/37572519/how-to-compile-elki-project-with-maven . On which system do you compile? – Furkan Gözükara Jun 01 '16 at 15:20
  • I haven't pulled from the master since 20 or so commits ago (the one I am working with is https://github.com/elki-project/elki/commit/03fbea9028ceda5839b61b65cae647e029eb8f70), so I can't tell you about the current status, maybe they have changed something. I am building on linux with maven 3.3.9 and java 1.8.0_91. – Johannes Ebster Jun 01 '16 at 16:24
  • Well i also tried on Ubuntu and it worked – Furkan Gözükara Jun 01 '16 at 16:33

1 Answers1

1

We are currently in the process of modularizing ELKI.

But mvn package does create .jar files in elki/target/ here:

elki/target/elki-0.7.2-SNAPSHOT.jar
elki/target/elki-0.7.2-SNAPSHOT-javadoc.jar
elki/target/elki-0.7.2-SNAPSHOT-sources.jar
elki/target/dependency/elki-core-dbids-0.7.2-SNAPSHOT.jar
elki/target/dependency/elki-core-dbids-int-0.7.2-SNAPSHOT.jar
elki/target/dependency/elki-core-util-0.7.2-SNAPSHOT.jar
elki/target/dependency/elki-docutil-0.7.2-SNAPSHOT.jar
elki/target/dependency/elki-logging-0.7.2-SNAPSHOT.jar
elki/target/dependency/hamcrest-core-1.3.jar
elki/target/dependency/javaparser-core-2.3.0.jar
elki/target/dependency/junit-4.12.jar
elki/target/dependency/trove4j-3.0.3.jar

The main jar, ./elki/target/elki-0.7.2-SNAPSHOT.jar is runnable, but will only include the command line interface because of modularization - the minigui is optional now.

If you want a all-in-one bundle (as distributed on the web site), you need to enable the Maven profile bundle in addition to the functionality you want to include (e.g. mvn -Psvg,svm,uncertain,bundle package).

Erich Schubert
  • 8,575
  • 2
  • 26
  • 42
  • Unfortunately I still can't get it to build correctly. the first error `mvn -Psvg,svm,uncertain,bundle package` returns: `[INFO] --- maven-javadoc-plugin:2.7:jar (attach-javadocs) @ elki-logging [ERROR] Error fetching link: [path]/elki/elki-core-util/target/apidocs/package-list. Ignored it.` then: `MavenReportException: Error while creating archive: [..] error: unknown tag: apiviz.composedOf` Sorry to be bothering you but since it is a maven based project I do think it should build on my system without problems... – Johannes Ebster Apr 16 '16 at 09:47
  • also I don't want to edit the pom.xml since I want to maintain compatibility with the upstream... – Johannes Ebster Apr 16 '16 at 09:49
  • That "unknown tag" is only a warning usually: `[WARNING] <...>.java:53: warning - @apiviz.has is an unknown tag.` We use an unofficial version of ApiViz with extra bug fixes, but as the project seems to be dead, I intend to move away to umlgraph. What maven version are you using, did you make any global maven settings? – Erich Schubert Apr 18 '16 at 08:27
  • I am using Apache Maven 3.3.9 and Java 1.8.0_77. I haven't changed any global settings from maven, it was a fresh install. Unfortunately on my system they are not warnings but errors.... – Johannes Ebster Apr 19 '16 at 10:42
  • The problem has been resolved in git. Oracle Java 1.8 (in contrast to OpenJDK 1.8 as included with e.g. Debian and Ubuntu Linux) considers these to be fatal by default now. There are many reports of this issue here on StackOverflow (e.g. http://stackoverflow.com/questions/15886209/maven-is-not-working-in-java-8-when-javadoc-tags-are-incomplete)! Please try the latest git version. – Erich Schubert Apr 19 '16 at 12:42
  • It's alive! Accepted your answer again. Thanks for the effort. – Johannes Ebster Apr 19 '16 at 13:10
  • If only it was working. The maven always gives error! https://stackoverflow.com/questions/37572519/how-to-compile-elki-project-with-maven – Furkan Gözükara Jun 01 '16 at 15:17