Maven Thrift repository - maven

Does anyone know if the Thrift libraries are in any Maven repository?

0.6.1 artifacts now available from main apache repo (http://repo1.maven.org/maven2)
<dependency>
<groupId>org.apache.thrift</groupId>
<artifactId>libthrift</artifactId>
<version>0.6.1</version>
</dependency>
https://issues.apache.org/jira/browse/THRIFT-363

I'm not sure what the Thrift libraries are (next time, maybe add a link) but according to Maven Browser, there is a thrift artifact in the scala-tools repository:
<repositories>
<repository>
<id>scala-tools</id>
<url>http://scala-tools.org/repo-releases/</url>
</repository>
</repositories>
Update: I can't say much about the version (and the content) hosted in the scala-tools repository but this is very likely an artifact made available by the scala folks for their own needs. Actually, the Apache Thrift project is using Ivy and publishing the java library to a maven repository (it will be the Apache snapshots repository, see THRIFT-363) is something on which they didn't work until recently. But the issue is closed now and my understanding is that they will publish an artifact with the next release.

As of now there are not any available, you will have to include the jar in your local repository.
You can set up something like Artefactory, a local repository and add the libthrift.jar there.

http://mvnrepository.com/artifact/org.apache.thrift/libthrift
You can search Maven repository from there.

Related

Maven import dependency Jetbrains Exposed

On the github page of Jetbrains' Exposed,a Kotlin SQL Framework, there is a link to a page where you can get the maven dependency for this library (https://bintray.com/kotlin/exposed/exposed/view#). The same dependecy can also be found on MVNRepository (https://mvnrepository.com/artifact/org.jetbrains.exposed/exposed/0.7.6).
I am using maven 3.3.9 and Intellij 2016.3.4, but maven cannot resolve this dependency. I check the ~/.m2/ directory and it seems that it is downloaded (there is a jar present). After looking at the repository I saw that there was no pom.xml and they where using Gradle.
Is it still possible to import this dependency with maven?
It is listed on mvnrepository, but artifact itself is located in Kotlin Exposed repository. You have to add link to the Exposed repository to your POM for Maven to find it.
<repositories>
<repository>
<id>exposed</id>
<name>exposed</name>
<url>https://dl.bintray.com/kotlin/exposed</url>
</repository>
</repositories>

How can I add maven artifact into an existing maven project

How can I add maven artifact into an existing maven project.I understand that I can build a jar locally and use file: protocol but this is possible using maven also.
For example I have a basic maven project
https://maven.apache.org/guides/getting-started/index.html#How_do_I_make_my_first_Maven_project and the artifact:
<repositories>
<repository>
<id>myrepo.org</id>
<name>MyRepository</name>
<url>http://mywork.com/repository</url>
</repository>
</repositories>
<dependency>
<groupId>org.ethereum</groupId>
<artifactId>ethereumj-core</artifactId>
<version>1.1.0-RELEASE</version>
I tried adding the code above to the project pom.xml fails because dependency is not in central maven repo.
mvn clean install
I then tried editing my settings.xml by adding the tag, that also failed because dependency was not found.
Im overlooking something pretty basic here.
Maven works on the concept of local and remote repositories.
The local repository refers to a copy on your own installation that is a cache of the remote downloads, and also contains the temporary build artifacts that you have not yet released.
Remote repository is repository you access the artifacts via file or http / ftp protocols , it can be an internal repo or a remote public hosted.
When you add dependency maven search that artifact in local if not found then remote repo will be searched. Still not found then error is reported.
https://maven.apache.org/guides/introduction/introduction-to-repositories.html
In your case, 'ethereumj-core' can not be located neither of location, you need find this jar and do a manual install to local repo.
mvn install:install-file -Dfile=< folder >\ethereumj-core.1.1.0-RELEASE.jar -DgroupId=org.ethereum
-DartifactId=ethereumj-core -Dversion=1.1.0-RELEASE -Dpackaging=jar
once properly installed maven should be able find this artifact when you add this as dependency to any of the projects (in pom.xml).
<dependency>
<groupId>org.ethereum</groupId>
<artifactId>ethereumj-core</artifactId>
<version>1.1.0-RELEASE</version>
</dependency>

Are ImageJ Maven dependencies in maven central?

I am planning to use ImageJ for a webapp but it seems ImageJ maven dependencies are not in the central maven repository.
Am I right?
Is this going to change when ImageJ 2.x is released?
EDIT: Updated on July 4, 2014 to reflect the latest status.
The builds on Maven Central with groupId gov.nih.imagej were done by a third party, but the official ImageJ 1.x builds are available from Maven Central with groupId net.imagej and artifactId ij starting from version 1.48r; e.g.:
<dependency>
<groupId>net.imagej</groupId>
<artifactId>ij</artifactId>
<version>1.48r</version>
</dependency>
Older official builds of ImageJ 1.x are available from the ImageJ Maven repository. It also has ImageJ2 builds which consist of several artifacts all prefixed by imagej-. You can use it via the following configuration:
<repositories>
<repository>
<id>imagej.public</id>
<url>http://maven.imagej.net/content/groups/public</url>
</repository>
</repositories>
It is suggested to model your POM after the ImageJ Tutorials. These projects inherit from the ImageJ parent POM, which avoids repeated boilerplate configuration sections.
We plan to begin submitting builds of ImageJ2 to Maven Central soon.
For more information about using Maven with ImageJ, see:
http://imagej.net/Maven
You can find the ImageJ maven dependencies at mvnrepository.com.
Listed versions are 1.40 - 1.46.
You might be searching for this snippet?
<dependency>
<groupId>net.imagej</groupId>
<artifactId>ij</artifactId>
<version>[1.45s,)</version>
</dependency>
Found it here. There might be other useful maven snippets for you as well.

install JAR from remote repo (clojar)

I want to download and install this Clojure library but cannot for the life of me figure it out. I researched Maven, but couldn't get it to find the repo. How can I easily install a Clojure library onto my machine?
You could add the repository containing this jar to your pom or settings file and specify the relevant jar as a dependency.
<repository>
<id>clojars.org</id>
<url>http://clojars.org/repo</url>
</repository>
...
<dependency>
<groupId>clj-http</groupId>
<artifactId>clj-http</artifactId>
<version>0.4.1</version>
</dependency>
download https://clojars.org/repo/clj-http/clj-http/0.4.1/clj-http-0.4.1.jar
mvn install:install-file -DgroupId=clj-http -DartifactId=clj-http -Dversion=0.4.1 -Dpackaging=jar -Dfile=clj-http-0.4.1.jar
If you are using Leiningen you can just read all about how to connect to repository server on a recent Sonatype blog post from Tim O'Brien.
If you are using Maven you should get a repo server like Nexus and setup the clojure repo as another proxy repository and add it to your public group.
If neither of these approaches is ok with you you can use Raghurams approach or number23_cn. Both of them however are semi optimal and will not scale for teams or many artifacts..

How can i use SVN as Maven Repository

I am working on project which has multiple dependencies. Most of the dependencies are available at our centralized maven repository. My project includes some JARs which only specific to my application and unavailable at our Maven repo. Due to some policy/restriction i cant deploy that jars to our maven repository.
When i install these jars in my local repository(i.e.UserHome/.m2/repository) and compile the code its working fine.
Now i want these dependencies in SVN so that we can build the application package using Continuum.(We cant refer local dependency from Continuum server.)
Just to achieve these i copied the locally installed dependency from .m2/repository and committed it in SVN. Then i declared repository in pom.xml like..
<repositories>
<repository>
<id>repo.pu</id>
<name>repo.pu</name>
<url>https://URL/migration2/APP1/src/main/lib/</url>
<layout>default</layout>
</repository>
</repositories>
Now to use dependency from above repo i added code like...
<dependencies>
<dependency>
<groupId>repo.pu</groupId>
<artifactId>Ptestval</artifactId>
<version>1.0</version>
</dependency>
</dependencies>
When i type mvn verify i am getting the below error..
[ERROR] Failed to execute goal on project APP1: Could not resolve dependencies f
or project fileservices.migration2:APP1:jar:1.0: Failed to collect dependencies
for [repo.pu:Ptestval:jar:1.0 (compile)]: Failed to read artifact descriptor for
repo.pu:Ptestval:jar:1.0: Could not transfer artifact repo.pu:Ptestval:pom:1.0
from/to repo.pu (https://URL/migration2/APP1/src/main/lib/): Access denied to:
https://URL/migration2/APP1/src/main/lib/repo/pu/Ptestv
al/1.0/Ptestval-1.0.pom -> [Help 1]
Could you please someone help me to resolve these issue?
EDIT: I created a repository like ..
<repositories>
<repository>
<id>repo.pu</id>
<name>repo.pu</name>
<url>https://SVNUserName:SVNPassword#SVN_URL/BaseProj/ProjA/src/main/lib</url>
<layout>default</layout>
</repository>
</repositories>
This technique works perfectly at my Personal laptop. Maven downloads the listed dependency from repo.
But when tries to use the same in my project on company network it is not working .. It gives the same error which i was getting before using this approach.
Can anyone help me please? What would be problem? Is it a network issue?
Set up a repository manager like Nexus and don't abuse Subversion for something it was not designed for. This is unfortunately done in Google Code.
You must configure your project to use wagon-scm.
See http://maven.apache.org/wagon/wagon-providers/wagon-scm/usage.html

Resources