Java Maven使用用户定义的分类器标记导入依赖项

Java Maven使用用户定义的分类器标记导入依赖项,java,maven,pom.xml,Java,Maven,Pom.xml,我尝试通过以下方式在POM中导入依赖项: <dependency> <groupId>org.test.maven-presets</groupId> <artifactId>caffe</artifactId> <version>preset-1.3.3-SNAPSHOT</version> <classifier>pojos</classifier> &

我尝试通过以下方式在POM中导入依赖项:

<dependency>
    <groupId>org.test.maven-presets</groupId>
    <artifactId>caffe</artifactId>
    <version>preset-1.3.3-SNAPSHOT</version>
    <classifier>pojos</classifier>
</dependency>

org.test.maven-presets
咖啡
预设-1.3.3-快照
波乔
有4个jar文件:1)caffe-preset-1.3.3-SNAPSHOT.jar 2)caffe-preset-1.3.3-SNAPSHOT-javadoc.jar 3)caffe-preset-1.3.3-SNAPSHOT-sources.jar和4)caffe-preset-1.3.3-SNAPSHOT-pojos.jar

我的要求只是我必须使用caffe-preset-1.3.3-SNAPSHOT-pojos.jar。但即使我使用了分类器标记,我仍然在获取caffe-preset-1.3.3-SNAPSHOT.jar下的类。如何仅使用标记下的类

就像我只有第四个Jar下的pojo一样,它在另一个项目中用作依赖项

我可以在另一个项目中添加这些POJO类,并单独创建一个Jar,并可以在其他项目中使用,但我们的技术团队管理层不同意创建新项目,因为它需要不同的批准,并且必须向每个项目明确说明理由


有人能帮我通过这个要求吗?谢谢。

您不应该从主项目中获取类,但当然,您可以获得依赖项。感谢Fabian的回复。但我看到的是,我得到了类和依赖项。这意味着我能够访问主类的方法并成功地导入它们。我们隔离的主要原因是,如果我们使用主jar,那么这些类将在另一个项目中重复。因此,我们只需要单独使用POJO,而不是完整的Jar。有什么办法吗?你可能会通过其他方式得到课程。你的方法应该行得通。看起来很有效,但是无论我们是否使用分类器标签,我们都可以使用所有的类,这再次违反了我们的要求。我认为你错了。使用分类器时,不会得到其他类。你可能只是认为你得到了其他类,但实际上,它们来自其他地方,或者你的IDE欺骗了你。你不应该从主项目中得到类,但当然,你得到了依赖项。谢谢Fabian的回复。但我看到的是,我得到了类和依赖项。这意味着我能够访问主类的方法并成功地导入它们。我们隔离的主要原因是,如果我们使用主jar,那么这些类将在另一个项目中重复。因此,我们只需要单独使用POJO,而不是完整的Jar。有什么办法吗?你可能会通过其他方式得到课程。你的方法应该行得通。看起来很有效,但是无论我们是否使用分类器标签,我们都可以使用所有的类,这再次违反了我们的要求。我认为你错了。使用分类器时,不会得到其他类。您可能只是认为您得到了其他类,但实际上,它们来自其他地方,或者您的IDE欺骗了您。