我刚刚开始用Java构建bigquery上传器。目标是下载一个完整的twitter流并将其上传到每小时一次的桶中,然后在Dremel中为主题检测和跟踪项目处理这些内容。这都是Eclipse中MacOSX上的Java,加上带有本地Nexus代理的Maven。
我被困在了起点;找到并编译了一个简单的Java示例,它对CSV文件进行身份验证和上传。我发现的最接近的是,虽然我不明白为什么我需要一个bigquery项目的appengine。稍后再研究。
问题是,该项目不会在maven中构建。eclipse中没有显示错误标志,但eclipse错误标志通常是不可靠的。pom在此元素上显示一个红色eclipse标志:
com.google.apis google-api-services-bigquery ${bigquery.version}
Maven安装失败
错误未能在项目bigquery上执行目标:无法解决项目com.google.api.client:bigquery示例:war:1.0.0-快照:无法解决下列工件: com.google.apis-samples:shared-sample-appengine:jar:1.3.2,s:google-api-services-bigquery:jar:v2-rev18-1.7.2-beta:无法在...SOF中找到com.google.apis-samples:shared-sample-appengine:jar:1.3.2不允许URL.在本地存储库中缓存,在nexus的更新间隔已过或更新被迫->帮助1之前,将不会重新尝试解析。
http://mavenrepo.google-api-java-client.googlecode.com/hg/和http://google-gson.googlecode.com/svn/mavenrepo/ (都设置为快照)定义了Nexus。这两种方法似乎都没有用。浏览存储和索引都是空的(只是一个原型目录)。然而,Browse似乎确实可以工作,AFAICT;显示了一个似乎已经完成的maven存储库树。
那么,我的问题是:如何用maven在Java中构建bigquery示例?
发布于 2012-08-17 20:49:15
根据我从谷歌外部观察到的情况,提出的问题的答案是:
紧急请求:请提供一个工作的java示例,该示例涵盖所有BigQuery特性,特别是步骤1;上载数据。请将示例与API代码捆绑,以确保它们保持同步。并自始至终采用maven约定,包括追溯性的。
发布于 2012-08-12 18:39:46
这里有一些非App示例:http://code.google.com/p/google-bigquery-tools/source/browse/samples/java/
我使用Sonatype的Maven插件,至少您的pom.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>com.google</groupId>
<artifactId>google</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>google</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>com.google.api-client</groupId>
<artifactId>google-api-client</artifactId>
<version>1.10.3-beta</version>
</dependency>
<dependency>
<groupId>com.google.apis</groupId>
<artifactId>google-api-services-bigquery</artifactId>
<version>v2-rev19-1.7.2-beta</version>
</dependency>
<dependency>
<groupId>com.google.oauth-client</groupId>
<artifactId>google-oauth-client</artifactId>
<version>1.8.0-beta</version>
</dependency>
</dependencies>
<repositories>
<repository>
<id>google-api-services</id>
<url>http://mavenrepo.google-api-java-client.googlecode.com/hg</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
</project>发布于 2013-01-09 01:53:10
在测试了这些库的url http://google-api-client-libraries.appspot.com/mavenrepo之后,我就能够让它工作了。它不允许浏览,所以nexus将尝试索引此回购和失败。当这种情况发生时,Nexus将阻止对此回购的访问,因此本地构建由于缺少依赖关系而失败。
为了缓解这种情况,我在Nexus中为这个存储库更改了两个设置。
有了这个集合,我就能够正确地构建和下载依赖项。
注意:我们还为Android使用,它有相同的问题,同样的解决方案被应用,我们能够缓存新的依赖项。
https://stackoverflow.com/questions/11922658
复制相似问题