我有一个大的Maven(第谷)项目女巫约有400个插件.
我们在每个POM文件中指定了应用程序版本.
有没有办法如何为所有POM指定版本:仅在一个地方?
我希望有人会这样想:
<properties>
<buildVersion>1.1.2-SNAPSHOT</buildVersion>
</properties>
....
<version>${buildVersion}</version>
Run Code Online (Sandbox Code Playgroud)
我们有父母pom.xml:
<modelVersion>4.0.0</modelVersion>
<groupId>company</groupId>
<artifactId>build.parent</artifactId>
<version>1.1.2-SNAPSHOT</version>
<packaging>pom</packaging>
Run Code Online (Sandbox Code Playgroud)
然后在每个POM中引用父POM:
<parent>
<artifactId>build.parent</artifactId>
<groupId>company</groupId>
<relativePath>../build.parent/pom.xml</relativePath>
<version>1.1.2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>company</groupId>
<artifactId>artifact</artifactId>
<version>1.1.2-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
Run Code Online (Sandbox Code Playgroud) 鉴于以下课程:
public abstract class Super {
protected static Object staticVar;
protected static void staticMethod() {
System.out.println( staticVar );
}
}
public class Sub extends Super {
static {
staticVar = new Object();
}
// Declaring a method with the same signature here,
// thus hiding Super.staticMethod(), avoids staticVar being null
/*
public static void staticMethod() {
Super.staticMethod();
}
*/
}
public class UserClass {
public static void main( String[] args ) {
new UserClass().method();
}
void method() {
Sub.staticMethod(); // …Run Code Online (Sandbox Code Playgroud) 在我的工作场所,他们让我学习 OSGi 框架并决定使用它的最佳方法是什么。
在过去的两周里,我在网上冲浪,发现了很多使用 OSGi 的不同方法,例如,我发现了 OSGi enRoute 方法和一个名为 BndTools 的 Eclipse 插件。我发现我可以简单地使用声明式服务或像 AIOLOS 这样的框架。
我对所有这些不同的方法和技术感到有些困惑……对于初学者来说,您认为开始使用 OSGi 的最佳方法是什么?是否有比其他实现更好的实现(例如 Equinox)?您有使用此框架的首选方法吗?
非常感谢您提前!