Maven Missing artifact org.geotools:gt-shapefile:jar:11-SNAP



您好,我正在尝试使用 maven 编写一个简单的地理工具项目。其实我对maven很陌生。我打开了新的 maven 项目,我设置了设置并编写了一些代码。据我所知,maven应该下载并安装地理工具所需的jar文件。但是A收到"缺少工件org.geotools:gt-shapefile:jar:11-SNAPSHOT"错误,我不明白为什么会这样。

我的工作环境:

日食开普勒,Jdk 6,Maven-最新版本,地理工具-最新版本

这是我的绒球.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.geotools</groupId>
<artifactId>tutorial</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>tutorial</name>
<url>http://maven.apache.org</url>
<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <geotools.version>11-SNAPSHOT</geotools.version>
</properties>
<dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>3.8.1</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.geotools</groupId>
        <artifactId>gt-shapefile</artifactId>
        <version>${geotools.version}</version>
    </dependency>
    <dependency>
        <groupId>org.geotools</groupId>
        <artifactId>gt-swing</artifactId>
        <version>${geotools.version}</version>
    </dependency>
</dependencies>
<repositories>
    <repository>
        <id>maven2-repository.dev.java.net</id>
        <name>Java.net repository</name>
        <url>http://download.java.net/maven/2</url>
    </repository>
    <repository>
        <id>osgeo</id>
        <name>Open Source Geospatial Foundation Repository</name>
        <url>http://download.osgeo.org/webdav/geotools/</url>
    </repository>
</repositories>

这是我的快速入门课程

    package org.geotools.tutorial;
import java.io.File;
import org.geotools.data.FileDataStore;
import org.geotools.data.FileDataStoreFinder;
import org.geotools.data.simple.SimpleFeatureSource;
import org.geotools.map.FeatureLayer;
import org.geotools.map.Layer;
import org.geotools.map.MapContent;
import org.geotools.styling.SLD;
import org.geotools.styling.Style;
import org.geotools.swing.JMapFrame;
import org.geotools.swing.data.JFileDataStoreChooser;
/**
 * Prompts the user for a shapefile and displays the contents on the screen in a map frame.
 * <p>
 * This is the GeoTools Quickstart application used in documentationa and tutorials. *
 */
public class Quickstart {
    /**
     * GeoTools Quickstart demo application. Prompts the user for a shapefile and displays its
     * contents on the screen in a map frame
     */
    public static void main(String[] args) throws Exception {
        // display a data store file chooser dialog for shapefiles
        File file = JFileDataStoreChooser.showOpenFile("shp", null);
        if (file == null) {
            return;
        }
        FileDataStore store = FileDataStoreFinder.getDataStore(file);
        SimpleFeatureSource featureSource = store.getFeatureSource();
        // Create a map content and add our shapefile to it
        MapContent map = new MapContent();
        map.setTitle("Quickstart");
        Style style = SLD.createSimpleStyle(featureSource.getSchema());
        Layer layer = new FeatureLayer(featureSource, style);
        map.addLayer(layer);
        // Now display the map
        JMapFrame.showMap(map);
    }
}

我只是写了我没有下载或安装任何jar的代码。我以 maven 项目的形式打开了该项目。我想知道 maven 何时以及如何下载和安装 jar?

谢谢。

我知道

这真的很老,但在搜索问题时仍然首先出现。网址再次更改,现在是:

<repository>
    <id>osgeo</id>
    <name>OSGeo Release Repository</name>
    <url>https://repo.osgeo.org/repository/release/</url>
  </repository>

或者,如果要启用快照:

  <repository>
    <id>osgeo</id>
    <name>OSGeo Release Repository</name>
    <url>https://repo.osgeo.org/repository/release/</url>
    <snapshots><enabled>false</enabled></snapshots>
    <releases><enabled>true</enabled></releases>
  </repository>
  <repository>
    <id>osgeo-snapshot</id>
    <name>OSGeo Snapshot Repository</name>
    <url>https://repo.osgeo.org/repository/snapshot/</url>
    <snapshots><enabled>true</enabled></snapshots>
    <releases><enabled>false</enabled></releases>
  </repository>

另请参阅项目网站上的 Eclipse 快速入门指南。

尝试将存储库 URL 替换为:http://repo.opengeo.org/

Maven 在其生命周期阶段之一下载 jar 并将其放入本地存储库,我不确定是哪一个,但如果您运行mvn clean install它应该下载项目所需的所有 jar。

对我来说

,添加以下内容解决了问题。它尝试从以下存储库中获取GeoTools,因为它不在maven中心上。

<repository>
    <id>osgeo</id>
    <name>Geotools repository</name>
    <url>http://download.osgeo.org/webdav/geotools</url>
</repository>

这是一个很旧的帖子,但我最近遇到了这个问题,并通过替换解决了它

http://repo.opengeo.org/ http://repo.boundlessgeo.com/main/

我遇到了同样的问题,用 URL "http://repo.opengeo.org/"替换存储库对我有用!

最新更新