Unicon / shib-cas-authn3

Integrates an external CAS Server and Shibboleth IdPv3.
Apache License 2.0
22 stars 16 forks source link

Missing JAR files / Cannot build from master branch (or >= v3.2.1 tag) #27

Closed rdev5 closed 7 years ago

rdev5 commented 7 years ago

Where are the JAR files we're supposed to "copy into the IDP_HOME directory?"

Attempting to build them with .\gradlew on Windows also fails:

10:25:57.274 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Caused by: java.io.IOException: Cannot run program "docker-compose" (in directory ".\shib-cas-authn3\build\docker"): CreateProces
s error=267, The directory name is invalid
10:25:57.274 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at net.rubygrapefruit.platform.internal.DefaultProcessLauncher.start(DefaultProcessLauncher.java:25)
10:25:57.274 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   ... 5 more
10:25:57.274 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Caused by: java.io.IOException: CreateProcess error=267, The directory name is invalid
10:25:57.274 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   ... 6 more
rdev5 commented 7 years ago

Just to update, the following yields a successful build:

> git clone https://github.com/Unicon/shib-cas-authn3.git
> cd shib-cas-authn3
> git checkout tags/v3.2.0

> .\gradlew
...
:processTestResources UP-TO-DATE
:testClasses
:test
:check
:build

BUILD SUCCESSFUL

Total time: 23.207 secs

However, jetty.log still shows:


2017-08-18 11:12:57,984 - WARN [org.eclipse.jetty.deploy.DeploymentManager:506] - Unable to reach node goal: started
java.lang.NoClassDefFoundError: org/jasig/cas/client/validation/Cas20ServiceTicketValidator
...
Caused by: java.lang.ClassNotFoundException: org.jasig.cas.client.validation.Cas20ServiceTicketValidator
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381) ~[na:1.8.0_144]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[na:1.8.0_144]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[na:1.8.0_144]
    at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:487) ~[jetty-webapp-9.3.9.v20160517.jar:9.3.9.v20160517]
    at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:428) ~[jetty-webapp-9.3.9.v20160517.jar:9.3.9.v20160517]
    ... 50 common frames omitted
rdev5 commented 7 years ago

Missing JAR for this class appears to still be available here: https://github.com/Unicon/shib-cas-authn3/blob/v3.0.0/README.md#copy-the-librariesjars

FYI, I'm in the process of assembling these documentation fixes here: https://github.com/rdev5/shib-cas-authn3/blob/patch-1/README.md

rdev5 commented 7 years ago

This apparently was a result of testing multiple versions, none of them getting cleaned up in the output web-app folder.

I removed the older versions and am now able to get this working (using the downloads in releases). Release version works, but build still fails so I'm going to leave this issue open.

jtgasper3 commented 7 years ago

@rdev5,

Sorry for the slow reply.

So running ./gradlew distTar distZip should get you a couple of archives with the appropriate jar files in the IDP_HOME/edit-webapp/WEB-INF/lib/ directory.

Certainly using the official releases are the way to go, but if you do build locally that should take care of you.

John

jtgasper3 commented 7 years ago

This will be fixed when 3.2.3 is merged to master via https://github.com/Unicon/shib-cas-authn3/commit/9d9b5640ff9cd32ecbccd283efde47d0e3707166.

Docker Compose will not be invoked at clean-up unless one of the compose-specific commands where run before. Also the default tasks builds the distributables.