Yes, an automated dependency manager would be great! My IDE (Netbeans) will 
flag missing dependencies in my source code without Maven or Ivy. Problem is 
that it doesn't catch various inter-dependencies within the jar files. 
Unfortunately, those inter-dependencies only become obvious at runtime. 

In the absence of an automated dependency manager, it would be *really nice* to 
break up the the binary distribution of GeoTools into sub-directories. That 
would help users pick and choose which jars/libs they need for their specific 
needs. So instead of having 200+ different jars in your project, you might only 
need a dozen or so. 

For example, I tend to organize the jars into the following directory structure:

/core - gt-api-14.1.jar - gt-opengis-14.1.jar - gt-metadata-14.1.jar - 
gt-referencing-14.1.jar - gt-geometry-14.1.jar
 - jsr-275-1.0-beta-2.jar - jts-1.13.jar
 ...

/epsg - gt-epsg-extension-14.1.jar - gt-epsg-wkt-14.1.jar
 ...
/epsg/driver
 - gt-epsg-hsql-14.1.jar - gt-epsg-postgresql-14.1.jar
 ...

/raster
 - gt-coverage-14.1.jar
 - gt-grid-14.1.jar
 - jai_core-1.1.3.jar ...
/raster/processing - gt-image-14.1.jar
 - gt-imagemosaic-14.1.jar - gt-imagepyramid-14.1.jar

/raster/drivers - gt-geotiff-14.1.jar
 - gdal-1.8.1.jar
 - gt-gtopo30-14.1.jar
 - gt-imageio-ext-.jar ...
/vector/drivers - gt-geojson-14.1.jar
 - gt-shapefile-14.1.jar - gt-vpf-14.1.jar
 ...
/database/drivers - gt-jdbc-14.1.jar ...
/database/drivers/h2 - gt-jdbc-h2-14.1.jar - h2-1.1.119.jar
/database/drivers/sqlite - gt-jdbc-spatialite-14.1.jar
 - sqlite-jdbc-3.8.6.jar
/database/drivers/postgis - gt-jdbc-postgis-14.1.jar
 - postgresql-9.4-1201-jdbc41.jar
/web - gt-wfs-14.1.jar 
 - net.opengis.wfs-14.1.jar - gt-wms-14.1.jar


Something like that...
Then, when I need to create a new app, I pick which jars I think I need based 
on their functionality. I only include the database drivers that I need, I 
might not need to do anything with rasters so I can exclude that directory 
wholesale, etc. 

I realize that the original thread was maven-specific so I apologize if my 
comments are steering the conversation off course. Just throwing out an idea to 
help make GeoTools more accessible to new users and casual users like me :-)

Thanks,
Peter






      From: Jes Wulfsberg Nielsen <[email protected]>
 To: GeoTools Users <[email protected]> 
 Sent: Thursday, December 3, 2015 7:30 AM
 Subject: Re: [Geotools-gt2-users] embedding GeoTools is always a pain
   
#yiv3288042049 #yiv3288042049 -- _filtered #yiv3288042049 
{font-family:Helvetica;panose-1:2 11 6 4 2 2 2 2 2 4;} _filtered #yiv3288042049 
{font-family:Helvetica;panose-1:2 11 6 4 2 2 2 2 2 4;} _filtered #yiv3288042049 
{font-family:Calibri;panose-1:2 15 5 2 2 2 4 3 2 4;} _filtered #yiv3288042049 
{panose-1:2 11 5 2 4 2 4 2 2 3;} _filtered #yiv3288042049 {panose-1:2 11 4 2 4 
2 4 2 2 3;}#yiv3288042049 #yiv3288042049 p.yiv3288042049MsoNormal, 
#yiv3288042049 li.yiv3288042049MsoNormal, #yiv3288042049 
div.yiv3288042049MsoNormal 
{margin:0cm;margin-bottom:.0001pt;font-size:12.0pt;}#yiv3288042049 a:link, 
#yiv3288042049 span.yiv3288042049MsoHyperlink 
{color:blue;text-decoration:underline;}#yiv3288042049 a:visited, #yiv3288042049 
span.yiv3288042049MsoHyperlinkFollowed 
{color:purple;text-decoration:underline;}#yiv3288042049 
span.yiv3288042049EmailStyle17 {color:#1F497D;}#yiv3288042049 
.yiv3288042049MsoChpDefault {font-size:10.0pt;} _filtered #yiv3288042049 
{margin:72.0pt 72.0pt 72.0pt 72.0pt;}#yiv3288042049 
div.yiv3288042049WordSection1 {}#yiv3288042049 You really want an automated 
dependency manager for that, so you can just point at the functionality you 
want, and get the needed jars assembled automatically.  If you don’t want 
Maven, you could take a look at the leaner Ivy, which uses the same definitions 
and repositories as Maven, but only handles the dependency management.(In 
fairness, if you only use Maven for dependency management, it’s not bad. Most 
of its bad reputation comes from people obsessively trying to use it as its own 
programming language).  JWN  

From: Peter Borissow [mailto:[email protected]] 
Sent: 3. december 2015 11:59
To: Jody Garnett <[email protected]>; teeschke <[email protected]>
Cc: GeoTools Users <[email protected]>
Subject: Re: [Geotools-gt2-users] embedding GeoTools is always a pain  I can 
definitely sympathize with Tee's situation. In the latest release of geotools 
(14.1) there are 223 different jar files. Chances are you don't need all of 
them for your project. In fact, if you're a noob and load all the jar files 
into a project without maven you'll get all sorts of errors.  Personally, I 
like my projects to have as small a footprint as possible with a minimal set of 
jars/dependencies. In the case of geotools, that means removing as many jars as 
necessary. I don't use maven so I have to prune the jars manually.   First, I 
separate out all the jars into categories (raster/image jars, database jars, 
vector jars, ogc/web related jars, xml/schema, commons, etc). Then I start 
adding the jars I think I need and add more jars as needed. This is an time 
consuming process but it keeps my final deployment size to a minimum.   Again, 
I don't use Maven and I don't know if it would help with this process. However, 
it would definitely help folks like me if the jars could be binned in some way. 
I can draft a list of bins if the packaging folks are willing to entertain this 
idea.    Thanks,Peter    PS. Love geotools! Thanks for everyone's hard work.  
From: Jody Garnett <[email protected]>
Sent: 29 November 2015 18:40
To: teeschke
Cc: GeoTools Users
Subject: Re: [Geotools-gt2-users] embedding GeoTools is always a pain  We are 
starting to look at replacing JAI, and will be doing design and fundraising 
over the course of 2016. JAI is not open source so we are unable to place it on 
maven central. The second part is service provider interface is a pain in some 
environments, and the "service registry" we use looks to be unsupported in Java 
9. 
|  | Replace JAI · geotools/geotools Wiki · GitHubgeotools - Official GeoTools 
repository ... You can clone with HTTPSRead more... |

    If you have any suggestions on parties interested in the above tasks we 
would love to know.  
--Jody Garnett  On 24 November 2015 at 14:35, teeschke <[email protected]> 
wrote:


Dear GeoTools users and developers,

after embedding GeoTools in my n-th project I am very annoyed about the
complexity and pitfalls of this process. Two Scenarios to describe the
problem:

First: I wanted to parse a KML file and try to follow the Geometry Guide on
http://docs.geotools.org/stable/userguide/library/xml/geometry.html#kml-parser
1. add boundless repository and include gt-api, gt-main and gt-epsg-hsql
because I learned my lessons from projects before
2. trying to resolve the KMLConfiguration
a) adding gt-xml and gt-geometry modules as dependencies which is not
documented but seems to be meaningful because the how-to is about this
b) adding the xsd/gt-xsd-kml module as dependencies because I stumbled into
the xsd folder and it sounds meaningful as well
--> lucky me: it was the right one
Sidenote: I needed to scroll through the boundless repository manually to
scan for this modules

Second Scenario: whenever I want to do something with grid files - the JAI
library is required but not hosted in the maven central or boundless repo.
So I must use another repository (osgeo/webda) which seems to be the last
one which is hosting the JAI library :)

At the end of the day all this searching and trying needs a lot of time, is
not a pleasure and from my point of view not state-of-the-art because all
other libraries are available at maven central and are able to manage their
own dependencies. But in case of GeoTools I always need to look into
reference projects to find out how I was getting it the last time.

What are your experience with scenarios like this? Are you adding all
modules into the pom to not run into problems I always got or is there a
how-to I missed? :)

Thanks and kind regards,
Tee




--
View this message in context: 
http://osgeo-org.1560.x6.nabble.com/embedding-GeoTools-is-always-a-pain-tp5238366.html
Sent from the geotools-gt2-users mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Go from Idea to Many App Stores Faster with Intel(R) XDK
Give your users amazing mobile app experiences with Intel(R) XDK.
Use one codebase in this all-in-one HTML5 development environment.
Design, debug & build mobile apps & 2D/3D high-impact games for multiple OSs.
http://pubads.g.doubleclick.net/gampad/clk?id=254741551&iu=/4140
_______________________________________________
GeoTools-GT2-Users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users
    
------------------------------------------------------------------------------  
_______________________________________________
GeoTools-GT2-Users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users  
------------------------------------------------------------------------------
Go from Idea to Many App Stores Faster with Intel(R) XDK
Give your users amazing mobile app experiences with Intel(R) XDK.
Use one codebase in this all-in-one HTML5 development environment.
Design, debug & build mobile apps & 2D/3D high-impact games for multiple OSs.
http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
_______________________________________________
GeoTools-GT2-Users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users


 
------------------------------------------------------------------------------
Go from Idea to Many App Stores Faster with Intel(R) XDK
Give your users amazing mobile app experiences with Intel(R) XDK.
Use one codebase in this all-in-one HTML5 development environment.
Design, debug & build mobile apps & 2D/3D high-impact games for multiple OSs.
http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
_______________________________________________
GeoTools-GT2-Users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users

Reply via email to