conveyal / gtfs-editor

A web-based GTFS editing framework. THIS PROJECT IS DEPRECATED. See https://github.com/ibi-group/datatools-ui for current version.
https://github.com/ibi-group/datatools-ui
MIT License
134 stars 63 forks source link

Dependencies update for conf/dependencies.yml #211

Open JWJoubert opened 9 years ago

JWJoubert commented 9 years ago

I have a partial solution. I am having problems with updating the dependencies. It seems some of the upstream libraries cannot be resolved. This is what I started with as a result:

~ *****************************************************************************
~ WARNING: These dependencies are missing, your application may not work properly (use --verbose for details),
~
~       javax.media->jai_core 1.1.3: missing artifact
~       org.opentripplanner->otp 1.0.0-SNAPSHOT
~       voldemort.store.compress->h2-lzf 1.0
~       java3d->vecmath 1.3.2
~       jgridshift->jgridshift 1.0
~ *****************************************************************************

As suggested by Damien Goujard in issue #171 one can manually copy some of the dependency files directly the the lib/ folder. That, however, resulted in the following warnings:

~ *****************************************************************************
~ WARNING: Your lib/ and modules/ directories and not synced with current dependencies (use --sync to automatically delete them)
~
~       Unknown: /usr/local/gtfs-editor/lib/jgridshift-1.0.jar
~       Unknown: /usr/local/gtfs-editor/lib/jai_core-1.1.3.jar
~       Unknown: /usr/local/gtfs-editor/lib/h2-lzf-1.0.jar
~       Unknown: /usr/local/gtfs-editor/lib/vecmath-1.3.2.jar
~       Unknown: /usr/local/gtfs-editor/lib/otp-1.0.0-SNAPSHOT.jar
~ *****************************************************************************

And yes, if you now use --sync it indeed deletes your just-completed hard work ;-)

I have been able to resolve most of these, and did it by changing the contains: portion of the conf/depedencies.yml file as follows:

# Application dependencies
...

repositories:
    - typesafe:
        type: iBiblio
        root: "http://repo.typesafe.com/typesafe/releases/"
        contains:
            - com.typesafe.akka -> *
            - voldemort.store.compress -> *
    - osgeo:
        type: iBiblio
        root: "http://download.osgeo.org/webdav/geotools/"
        contains:
            - org.geotools -> *
            - java3d -> *
            - javax.media -> *
            - jgridshift -> *
    - conveyal:
        type: iBiblio
        root: "http://maven.conveyal.com/"
        contains:
            - org.opentripplanner -> *

But I remain with two problems:

~ *****************************************************************************
~ WARNING: These dependencies are missing, your application may not work properly (use --verbose for details),
~
~       javax.media->jai_core 1.1.3: missing artifact
~       org.opentripplanner->otp 1.0.0-SNAPSHOT
~ *****************************************************************************

... even though both these jar files have been copied manually to the lib/ folder.

  1. I have checked that osgeo.org contains javax.media and jai_core 1.1.3 - the .jar file is there. However, it seems that before osgeo.org is checked, Maven Central is checked first!! An there too is a java/media/jai_core/1.1.3/ folder but it does not contain the correct .jar file. So it does not fall back to osgeo.org. Is there a way one can tell the dependency management to first check the repositories we provide in the dependencies.yml file before checking maven central? It was logged as a known issue on Maven central, stating the jar was possible never there... and the issue was closed with a 'won't fix' comment.
  2. I cannot access Conveyal's maven repository. I get 404 Not found response with the following additional info:
    • Code: NoSuchKey
    • Message: The specified key does not exist.
    • Key: index.html
    • RequestId: E7C4DACA2F4DA880
    • HostId: fpwoGNvuculLATNVuiJ7jt6o8SIE95Od9geQULj9zjvZI8ssucSHxJkpR9oSJPTfOHshR40NaXc=

Any suggestions please?

markjd84 commented 9 years ago

I get the same error message as yours at the top but it doesn't seem to matter. I just copied otp-1.0.0-SNAPSHOT.jar into the lib/ directory, and use the .yml file as it comes from the repo.

This is possibly a bit of a silly suggestion, and people who understand these things better will be able to say for sure, but I've never been sure whether play requires Maven or Ivy to be installed to correctly manage dependencies. For what it's worth, both are installed on the box where I have this working.

Cheers

fabid commented 9 years ago

As of current version (c5c18e6), I have the following issues:

::          UNRESOLVED DEPENDENCIES         ::
::::::::::::::::::::::::::::::::::::::::::::::
:: voldemort.store.compress#h2-lzf;1.0: not found
:: java3d#vecmath;1.3.2: not found
:: jgridshift#jgridshift;1.0: not found
::::::::::::::::::::::::::::::::::::::::::::::
::              FAILED DOWNLOADS            ::
:: javax.media#jai_core;1.1.3!jai_core.jar

No more problem wit otp. @JWJoubert solution parly worked except I had to change repo for voldemort:

- akka:
    type: iBiblio
    root: "http://repo.akka.io/releases/"
    contains:
        - voldemort.store.compress -> *

And the only remaining warning is with jai_core

bufemc commented 7 years ago

Hello, attached my dependencies.yml file, which might be helpful for others, too.

I could fix every issue, except for otp-0.14.0.jar. See also: https://groups.google.com/forum/#!topic/opentripplanner-users/V6dDw1QIO7E

In the end, as neither 0.20.0 nor latest 1.1.0 worked for me, I just copied the otp-0.14.0.jar into the lib folder, and conveyal worked even in a docker image.

# Application dependencies

require:
    - play
    - com.typesafe.akka -> akka-actor 2.0.3
    - com.typesafe.akka -> akka-remote 2.0.3
    - gov.sandia.foundry -> gov-sandia-cognition-common-core 3.3.2
    - gov.sandia.foundry -> gov-sandia-cognition-learning-core 3.3.2
    - com.google.guava -> guava 11.0.1
    - com.vividsolutions -> jts 1.12
    - org.geotools -> gt-main 12.2
    - org.geotools -> gt-geojson 12.2
    - com.fasterxml.jackson.core -> jackson-core 2.4.4
    - com.fasterxml.jackson.core -> jackson-databind 2.4.4
    - net.sf.opencsv -> opencsv 2.0
    - org.mapdb -> mapdb 1.0.7

    - org.opentripplanner -> otp 0.14.0

    - org.hsqldb -> hsqldb 2.3.4
    - com.google.guava -> guava 11.0.1
    - javax.servlet -> servlet-api 2.5
    - javax.media -> jai_core 1.1.3
    - voldemort.store.compress -> h2-lzf 1.0
    - java3d -> vecmath 1.5.2
    - jgridshift -> jgridshift 1.0

repositories:

    - typesafe:
        type: iBiblio
        root: "http://repo.typesafe.com/typesafe/releases/"
        contains:
            - com.typesafe.akka -> *

    - akka:
        type: iBiblio
        root: "http://repo.akka.io/releases/"
        contains:
            - voldemort.store.compress -> *

    - osgeo:
        type: iBiblio
        root: "http://download.osgeo.org/webdav/geotools/"
        contains:
            - org.geotools -> *
            - java3d -> *
            - javax.media -> *
            - jgridshift -> *

    - conveyal:
        type: iBiblio
        root: "http://maven.conveyal.com/"
        contains:
            - org.opentripplanner -> *