Hello Rene,
ah, I see. Sure, as Java 11 is current LTS it makes sense to set it as
requirement instead of Java 9 or Java 10. And it doesn't require
tweaking to have the correct root certificate to make it work but works
out of the box. I only still use Java 8 because, as said, someone
mentioned that James isn't meant to be ready yet to be used with
anything newer (if I remember I had some issues after upgrade from leap
42.3 to 15.0) - I'll give it a try with at least Java 11 at see how it
performs.
Matt
Am 02.03.2020 um 09:58 schrieb Rene Cordier:
Hello Matt,
Yes the "release" option has been introduced from Java9, it's correct.
But well Java9 and 10 being out of support already, we upgraded to
Java 11. Regarding the why, I believe this was the reason:
https://github.com/linagora/james-project/pull/2511
Using the release flag allowed us to get rid of the animal-sniffer
plugin and get faster compilation time.
We did try to do a complete move a while ago to Java11 but I think
there was some issue, perhaps because we needed to bump up Spring, not
sure to remember well. We might need to dig deeper into it.
Rene.
On 02/03/2020 14:06, cryptearth wrote:
Hello Rene,
in fact I used a jdk11 for my test. I just asked Google for the error
message about the unrecognized parameter "--release", wich seem to be
added by Java 9. Also I just thought it's an issue with the maven
version installed on the system I used for the test. As I just looked
through the pom.xml I guess the reason is that for the
maven-compiler-plugin the option "release" was added.
I tried to compile with jdk9 - and it just failed to the end as
registry-1.docker.io uses a certificate signed by a CA not part of
jdk9. But this was an easy fix to just point the
jdk9/lib/security/cacerts to /var/lib/ca-certificates/java-cacerts >
mvn package went fine. I also just removed the "release" tag from
pom.xml and was able to compile with jdk8. So, technically when done
correctly building can be done with jdk8 - sure, otherwise targeting
java8 for runtime wouldn't work.
Aside from that tinkering with jdk and the pom.xml to fix the
requirement for jdk11 for compiling, is there some other reason why
it was done that way? Also, is James ready now to be used with
anything newer than Java 8? Last time I think Benoit was it who
mentioned that for some reason James is only supposed to be run with
Java 8 - can't remember.
Matt
Am 02.03.2020 um 03:19 schrieb Rene Cordier:
Hello Alexei,
The correct page of that broken link would be
https://james.apache.org/server/install.html (which I see has been
fixed in the code but not deployed, sorry).
But the install page seems not even updated to 3.4.0 (still 3.3.0).
I will try to see what can be done regarding that. Thanks for the
report and concern !
Meanwhile you can follow Matt's guideline, it looks pretty accurate
to me (thanks Matt). The thing I would like to add is that with
James 3.4.0, you need to compile it with Java11 now (but we still
target the build to run on Java8).
If any other issue, don't hesitate to write an other mail, or ask a
question on the gitter of the project too
(https://gitter.im/apache/james-project).
Best regards,
Rene.
On 02/03/2020 04:02, cryptearth wrote:
Hello Alexei,
here's a short how I do it:
1.) clone stable git head, like current for 3.4, into its specific
directory: git clone --branch james-project-3.4.0
https://github.com/apache/james-project.git james-3.4.0
2.) build it but skipping tests (cause some fail and it saves a lot
of time - they're not needed for just use it): mvn -DskipTests package
2.) a) maybe a maven version related issue on my side - but I got
an issue about "--parameter" not a valid parameter for the java
compiler - but if you also get this error (pretty early on) make
sure to use a Java 9+ compiler or an older maven
2.) b) you can try to run James 3.4 with Java 9+, but if I remember
correctly someone told me that Java 3.3 is still to be run with
only Java 8 - I don't know about James 3.4
2.) c) you may hit the limit for open files - in that case increase
the limits and re-log
3.) after successful compiling and packaging you'll find the
non-docker server in <path to local cloned git
repo>/server/app/target/james-server-app-3.4.0-app.tar.gz (or .zip
- don't know why it's packaged into two different package styles -
as on unix .tar.gz is common - guess the .zip is for any of those
not so familiar with .tar.gz (windows users?)) - just copy this one
to to folder you want your James to be "installed" and unpack it (I
just copied und unpacked it in user home)
4.) you should have a look at some of the config files: some are
quite important, some are just to "fancy up" your James, it depends
on how you want to run your James (as an example: as I use MariaDB
I had to manual add its driver to the <path-to-james>/conf/lib
folder and set database access credentials (and type) in
<path-to-james>/conf/james-database.properties - also I edit some
other settings)
5.) after all configs are the way you like them just start james as
root (required for at least TCP/25 to receive mails from other
MTAs) by: <path-to-james>/bin/james start
5.) a) if you encounter issues you can either have a look at the
log <path-to-james>/log/wrapper.log - or run James in an
interactive console style: <path-to-james>/bin/james console
6.) after the server start up successful you have to add at least
one domain: <path-to-james>/bin/james-cli.sh -h localhost AddDomain
your-domain.example
7.) after you added your domain you should at least add a
postmaster user: <path-to-james>/bin/james-cli.sh -h localhost
AddUser [email protected] securepassword
That's pretty much it. Hope it helps you to get James running in
non-docker mode. If you need help with the configs just go them
through step by step, they're well documented. I would recommend to
at least enable SMTP AUTH (and disable the default access control
as it's explained by the docs) to prevent your server become an
open relay.
greetings from Germany,
Matt
Hello,
I've wanted to try James without docker but the link
"https://james.apache.org/install.html" from James main site
("https://james.apache.org/") points to an invalid page (404 Not
found).
Could you please point to a correct place with the instruction?
The broken link is located in the section "Get Started With James"
- "ALTERNATIVES" on https://james.apache.org/
Best regards,
Alexei Osipov.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]