diff --git a/.gitignore b/.gitignore index f904d2e..db18f71 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /nbproject/private/ /build/ -/dist/ \ No newline at end of file +/dist/ +/target/ \ No newline at end of file diff --git a/README.md b/README.md index 5cffd66..590bdac 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,19 @@ #java-graphs Algorithms that build k-nearest neighbors graph (k-nn graph): Brute-force, NN-Descent,... -##Download -https://github.com/tdebatty/java-graphs/releases +##Installation + +Using maven: +``` + + info.debatty + java-graphs + 0.1 + +``` + +Or from the [releases page](https://github.com/tdebatty/java-graphs/releases). + ##NN-Descent Implementation of NN-Descent, as proposed by Dong, Moses and Li; [Efficient k-nearest neighbor graph construction for generic similarity measures](http://portal.acm.org/citation.cfm?doid=1963405.1963487); Proceedings of the 20th international conference on World wide web. diff --git a/build.xml b/build.xml deleted file mode 100644 index 61a230a..0000000 --- a/build.xml +++ /dev/null @@ -1,79 +0,0 @@ - - - - - - - - - - - Builds, tests, and runs the project graphs. - - - - - - - - - diff --git a/manifest.mf b/manifest.mf deleted file mode 100644 index 328e8e5..0000000 --- a/manifest.mf +++ /dev/null @@ -1,3 +0,0 @@ -Manifest-Version: 1.0 -X-COMMENT: Main-Class will be added automatically by build - diff --git a/nbproject/build-impl.xml b/nbproject/build-impl.xml deleted file mode 100644 index e64a538..0000000 --- a/nbproject/build-impl.xml +++ /dev/null @@ -1,1390 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Must set src.dir - Must set build.dir - Must set dist.dir - Must set build.classes.dir - Must set dist.javadoc.dir - Must set build.test.classes.dir - Must set build.test.results.dir - Must set build.classes.excludes - Must set dist.jar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Must set javac.includes - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - No tests executed. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Must set JVM to use for profiling in profiler.info.jvm - Must set profiler agent JVM arguments in profiler.info.jvmargs.agent - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Must select some files in the IDE or set javac.includes - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - To run this application from the command line without Ant, try: - - java -jar "${dist.jar.resolved}" - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Must select one file in the IDE or set run.class - - - - Must select one file in the IDE or set run.class - - - - - - - - - - - - - - - - - - - - - - - Must select one file in the IDE or set debug.class - - - - - Must select one file in the IDE or set debug.class - - - - - Must set fix.includes - - - - - - - - - - This target only works when run from inside the NetBeans IDE. - - - - - - - - - Must select one file in the IDE or set profile.class - This target only works when run from inside the NetBeans IDE. - - - - - - - - - This target only works when run from inside the NetBeans IDE. - - - - - - - - - - - - - This target only works when run from inside the NetBeans IDE. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Must select one file in the IDE or set run.class - - - - - - Must select some files in the IDE or set test.includes - - - - - Must select one file in the IDE or set run.class - - - - - Must select one file in the IDE or set applet.url - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Must select some files in the IDE or set javac.includes - - - - - - - - - - - - - - - - - - Some tests failed; see details above. - - - - - - - - - Must select some files in the IDE or set test.includes - - - - Some tests failed; see details above. - - - - Must select some files in the IDE or set test.class - Must select some method in the IDE or set test.method - - - - Some tests failed; see details above. - - - - - Must select one file in the IDE or set test.class - - - - Must select one file in the IDE or set test.class - Must select some method in the IDE or set test.method - - - - - - - - - - - - - - Must select one file in the IDE or set applet.url - - - - - - - - - Must select one file in the IDE or set applet.url - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/nbproject/genfiles.properties b/nbproject/genfiles.properties deleted file mode 100644 index 3ecf4e3..0000000 --- a/nbproject/genfiles.properties +++ /dev/null @@ -1,8 +0,0 @@ -build.xml.data.CRC32=65546f2a -build.xml.script.CRC32=87c1dd2e -build.xml.stylesheet.CRC32=8064a381@1.68.1.46 -# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml. -# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you. -nbproject/build-impl.xml.data.CRC32=346f1500 -nbproject/build-impl.xml.script.CRC32=959c6a74 -nbproject/build-impl.xml.stylesheet.CRC32=5a01deb7@1.68.1.46 diff --git a/nbproject/project.properties b/nbproject/project.properties deleted file mode 100644 index daa384d..0000000 --- a/nbproject/project.properties +++ /dev/null @@ -1,75 +0,0 @@ -annotation.processing.enabled=true -annotation.processing.enabled.in.editor=false -annotation.processing.processors.list= -annotation.processing.run.all.processors=true -annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output -application.title=java-graphs -application.vendor=tibo -build.classes.dir=${build.dir}/classes -build.classes.excludes=**/*.java,**/*.form -# This directory is removed when the project is cleaned: -build.dir=build -build.generated.dir=${build.dir}/generated -build.generated.sources.dir=${build.dir}/generated-sources -# Only compile against the classpath explicitly listed here: -build.sysclasspath=ignore -build.test.classes.dir=${build.dir}/test/classes -build.test.results.dir=${build.dir}/test/results -# Uncomment to specify the preferred debugger connection transport: -#debug.transport=dt_socket -debug.classpath=\ - ${run.classpath} -debug.test.classpath=\ - ${run.test.classpath} -# Files in build.classes.dir which should be excluded from distribution jar -dist.archive.excludes= -# This directory is removed when the project is cleaned: -dist.dir=dist -dist.jar=${dist.dir}/java-graphs.jar -dist.javadoc.dir=${dist.dir}/javadoc -endorsed.classpath= -excludes= -file.reference.java-graphs-src=src -includes=** -jar.compress=false -javac.classpath= -# Space-separated list of extra javac options -javac.compilerargs= -javac.deprecation=false -javac.processorpath=\ - ${javac.classpath} -javac.source=1.6 -javac.target=1.6 -javac.test.classpath=\ - ${javac.classpath}:\ - ${build.classes.dir} -javac.test.processorpath=\ - ${javac.test.classpath} -javadoc.additionalparam= -javadoc.author=false -javadoc.encoding=${source.encoding} -javadoc.noindex=false -javadoc.nonavbar=false -javadoc.notree=false -javadoc.private=false -javadoc.splitindex=true -javadoc.use=true -javadoc.version=false -javadoc.windowtitle= -main.class= -manifest.file=manifest.mf -meta.inf.dir=${src.dir}/META-INF -mkdist.disabled=false -platform.active=default_platform -run.classpath=\ - ${javac.classpath}:\ - ${build.classes.dir} -# Space-separated list of JVM arguments used when running the project. -# You may also define separate properties like run-sys-prop.name=value instead of -Dname=value. -# To set system properties for unit tests define test-sys-prop.name=value: -run.jvmargs= -run.test.classpath=\ - ${javac.test.classpath}:\ - ${build.test.classes.dir} -source.encoding=UTF-8 -src.dir=${file.reference.java-graphs-src} diff --git a/nbproject/project.xml b/nbproject/project.xml deleted file mode 100644 index bd03a50..0000000 --- a/nbproject/project.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - org.netbeans.modules.java.j2seproject - - - java-graphs - - - - - - - diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..9aeaa1f --- /dev/null +++ b/pom.xml @@ -0,0 +1,112 @@ + + + + + 4.0.0 + info.debatty + java-graphs + 0.1 + jar + + ${project.groupId}:${project.artifactId} + https://github.com/tdebatty/java-graphs + Algorithms that build k-nearest neighbors graph (k-nn graph): Brute-force, NN-Descent,... + + + UTF-8 + + + + + MIT License + http://www.opensource.org/licenses/mit-license.php + + + + + Thibault Debatty + thibault@debatty.info + debatty.info + http://debatty.info + + + + scm:git:git@github.com:tdebatty/java-graphs.git + scm:git:git@github.com:tdebatty/java-graphs.git + git@github.com:tdebatty/java-graphs.git + + + + + ossrh + https://oss.sonatype.org/content/repositories/snapshots + + + ossrh + https://oss.sonatype.org/service/local/staging/deploy/maven2/ + + + + + + + org.sonatype.plugins + nexus-staging-maven-plugin + 1.6.3 + true + + ossrh + https://oss.sonatype.org/ + true + + + + + org.apache.maven.plugins + maven-source-plugin + 2.2.1 + + + attach-sources + + jar-no-fork + + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + 2.9.1 + + + attach-javadocs + + jar + + + + + + + org.apache.maven.plugins + maven-gpg-plugin + 1.5 + + + sign-artifacts + verify + + sign + + + + + + + + + diff --git a/src/info/debatty/java/graphs/Brute.java b/src/main/java/info/debatty/java/graphs/Brute.java similarity index 100% rename from src/info/debatty/java/graphs/Brute.java rename to src/main/java/info/debatty/java/graphs/Brute.java diff --git a/src/info/debatty/java/graphs/CallbackInterface.java b/src/main/java/info/debatty/java/graphs/CallbackInterface.java similarity index 100% rename from src/info/debatty/java/graphs/CallbackInterface.java rename to src/main/java/info/debatty/java/graphs/CallbackInterface.java diff --git a/src/info/debatty/java/graphs/Edge.java b/src/main/java/info/debatty/java/graphs/Edge.java similarity index 100% rename from src/info/debatty/java/graphs/Edge.java rename to src/main/java/info/debatty/java/graphs/Edge.java diff --git a/src/info/debatty/java/graphs/GraphBuilder.java b/src/main/java/info/debatty/java/graphs/GraphBuilder.java similarity index 100% rename from src/info/debatty/java/graphs/GraphBuilder.java rename to src/main/java/info/debatty/java/graphs/GraphBuilder.java diff --git a/src/info/debatty/java/graphs/NNDescent.java b/src/main/java/info/debatty/java/graphs/NNDescent.java similarity index 100% rename from src/info/debatty/java/graphs/NNDescent.java rename to src/main/java/info/debatty/java/graphs/NNDescent.java diff --git a/src/info/debatty/java/graphs/Neighbor.java b/src/main/java/info/debatty/java/graphs/Neighbor.java similarity index 100% rename from src/info/debatty/java/graphs/Neighbor.java rename to src/main/java/info/debatty/java/graphs/Neighbor.java diff --git a/src/info/debatty/java/graphs/NeighborList.java b/src/main/java/info/debatty/java/graphs/NeighborList.java similarity index 100% rename from src/info/debatty/java/graphs/NeighborList.java rename to src/main/java/info/debatty/java/graphs/NeighborList.java diff --git a/src/info/debatty/java/graphs/Node.java b/src/main/java/info/debatty/java/graphs/Node.java similarity index 100% rename from src/info/debatty/java/graphs/Node.java rename to src/main/java/info/debatty/java/graphs/Node.java diff --git a/src/info/debatty/java/graphs/SimilarityInterface.java b/src/main/java/info/debatty/java/graphs/SimilarityInterface.java similarity index 100% rename from src/info/debatty/java/graphs/SimilarityInterface.java rename to src/main/java/info/debatty/java/graphs/SimilarityInterface.java diff --git a/src/info/debatty/java/graphs/ThreadedNNDescent.java b/src/main/java/info/debatty/java/graphs/ThreadedNNDescent.java similarity index 100% rename from src/info/debatty/java/graphs/ThreadedNNDescent.java rename to src/main/java/info/debatty/java/graphs/ThreadedNNDescent.java diff --git a/src/info/debatty/java/util/BoundedPriorityQueue.java b/src/main/java/info/debatty/java/util/BoundedPriorityQueue.java similarity index 100% rename from src/info/debatty/java/util/BoundedPriorityQueue.java rename to src/main/java/info/debatty/java/util/BoundedPriorityQueue.java