繁体   English   中英

创建依赖RESTlet的Maven工件-如何处理版本

[英]Creating maven artifacts that depend on RESTlet - how to handle editions

我正在创建一个最终将成为Maven工件的库,其他项目可以利用该库。 它使用RESTlet作为REST客户端。

虽然我的工件/库是平台无关的,但它所具有的依赖性却不是。 RESTlet有多个版本,其中一个用于GAE,一个用于JEE等,每个版本都有其自己的组ID org.restlet。 gae例如:

<dependency>
   <groupId>org.restlet.gae</groupId>
   <artifactId>org.restlet</artifactId>
   <version>2.2-M6</version>
</dependency>

理想情况下,我希望该库的用户能够自己指定确切的RESTlet版本。 打包我的库的最佳方法是什么,这将为其用户带来最少的麻烦?

我四处张望,但找不到此类事情的指南/最佳实践。

我也有同样的情况。 我有一个Java库,它依赖于Restlet,并由我的GAE服务器和我的Android客户端使用。

对于lib,我将restlet依赖项标记为可选,并指定“提供的”范围,因为它是由包含应用程序提供的。 在构建lib时,我使用的是jse版本,但我认为使用哪个版本都没有关系。 因为界面是相同的。

<dependency>
  <groupId>org.restlet.jse</groupId>
  <artifactId>org.restlet</artifactId>
  <version>${restlet.version}</version>
  <optional>true</optional>
  <scope>provided</scope>
</dependency>

对于我的Android客户端,我指定了android版本:

<dependency>
  <groupId>org.restlet.android</groupId>
  <artifactId>org.restlet</artifactId>
  <version>${restlet.version}</version>
</dependency>

对于我的GAE服务,我指定gae版本:

<dependency>
  <groupId>org.restlet.gae</groupId>
  <artifactId>org.restlet</artifactId>
  <version>${restlet.version}</version>
</dependency>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM