Installing James

25 views
Skip to first unread message

karenh...@gmail.com

unread,
Mar 12, 2017, 7:13:25 AM3/12/17
to JAMES Users
I wanted to clone the James repository in my own project.
After cloning it and installing Maven, I tried to execute 'mvn install' in the james folder like written on the website.
I got the error:

 Non-resolvable parent POM for org.jamesframework:james-core:1.3-SNAPSHOT: Could not find artifact org.jamesframework:james:pom:1.3-SNAPSHOT and 'parent.relativePath' points at wrong local POM @ line 6, column 13 -> [Help 2]

I can't figure out how to fix this, can you help me with this?
Thank you!

Karen Hilgert

Herman De Beukelaer

unread,
Mar 12, 2017, 10:22:13 AM3/12/17
to JAMES Users, karenh...@gmail.com
Hi Karen,

I am unable to reproduce this error. Could you please provide me with the full build log?

Also, is there a specific reason why you want to build JAMES from source?
If you don't want to make changes to the code, the easiest way to use JAMES is by simply including a dependency for the needed modules, e.g.

<dependency>
  <groupId>org.jamesframework</groupId>
  <artifactId>james-core</artifactId>
  <version>1.2</version>
</dependency>

This automatically retrieves the necessary JARs from the Central Repository without having to compile any code.

Best,
Herman

Herman De Beukelaer

unread,
Mar 12, 2017, 10:34:34 AM3/12/17
to JAMES Users, karenh...@gmail.com
Karen,

Could it be that you only cloned and tried to build the core module?
If so, this won't work (at least not for snapshot versions).
You need to clone the entire project with


Afterwards you can either build all modules with

$ cd james/james
$ mvn install

or e.g. build only the core module with

$ cd james/james/james-core
$ mvn install

When building a release version the parent POM is retrieved from Central but for development snapshots
(like the 1.3 snapshot you tried to build) it needs to be available locally. The error you got complains that
the parent POM wasn't found, so that why I am guessing that you only cloned the core module...

If you need more help let me know.

Good luck!
Herman



Op zondag 12 maart 2017 15:22:13 UTC+1 schreef Herman De Beukelaer:

karenh...@gmail.com

unread,
Mar 13, 2017, 4:08:36 AM3/13/17
to JAMES Users, karenh...@gmail.com
Hi Herman,

Yes, I only clones the core, I will try it with the whole framework now.
I just want to use it in my own java project. I also didn't want to have the snapshot, I clones the latest version (at least I tough so).
Where should I put that dependency? I am not really following how those POMs work.

Karen

karenh...@gmail.com

unread,
Mar 13, 2017, 4:33:50 AM3/13/17
to JAMES Users, karenh...@gmail.com
I did what you said here and now it works, thank you!

Op zondag 12 maart 2017 15:34:34 UTC+1 schreef Herman De Beukelaer:

Herman De Beukelaer

unread,
Mar 13, 2017, 6:58:24 AM3/13/17
to JAMES Users, karenh...@gmail.com
Hi Karen,

Are you using Maven for your own project? If so, you should have a POM file in your project's root, which is just an XML file.
The basic structure is explained here https://maven.apache.org/pom.html#What_is_the_POM. The dependency for JAMES
(or other packages) should go under <dependendies>...</dependencies> (line 12). Maven will then automatically
retrieve all necessary JARs (also of transitive dependencies).

If you are not using Maven yourself (or a compatible build tool like Ant, Gradle or SBT) you need to manually add the JARs.
The easiest way is to simply download them from the website: http://www.jamesframework.org/getstarted/#releases-jars.
In this case, do not forget to also include the SLF4J jar as explained in the instructions.

If you insist on building from source please be aware that the master branch of the repos always contains the latest
development version, not a stable release. If you want a specific release version, after cloning the repo, you need to
check out that version, e.g.

$ git checkout v1.2

before building the project. You should be able to build release versions of individual modules without cloning the
entire parent project nor any other modules (because the missing parts are retrieved from the Central Repository).

Herman

Op maandag 13 maart 2017 09:08:36 UTC+1 schreef Karen Hilgert:
Reply all
Reply to author
Forward
0 new messages