小编Wal*_*lle的帖子

仅在父级中运行maven插件

我已经创建了一个maven插件来启动,清理和停止数据库.我的项目包含一个包含4个模块的pom文件:

<modules>
    <module>infrastructure</module>
    <module>domain</module>
    <module>application</module>
    <module>presentation</module>
</modules>
Run Code Online (Sandbox Code Playgroud)

该插件仅在此pom中指定,而不是在模块的pom中指定.当我转到cmd以启动数据库时:

mvn hsqldb:startdb
Run Code Online (Sandbox Code Playgroud)

Maven尝试为每个pom文件创建一个数据库.它实际上启动了5个数据库(一个用于父pom,一个用于每个模块).但是,我只想要一个(来自父pom).在我的父pom文件中,插件声明如下:

<plugin>
    <groupId>sample.plugin</groupId>
    <artifactId>hsqldb-maven-plugin</artifactId>
    <version>1.0-SNAPSHOT</version>
    <inherited>false</inherited>
    <dependencies>
        <dependency>
            ...
        </dependency>
    </dependencies>
    <executions>
        ...
    </executions>
    <configuration>
        ...
    </configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)

我的问题的解决方案?

亲切的问候,

WALLE

maven-plugin pom.xml maven

13
推荐指数
1
解决办法
5816
查看次数

如何在Java的新进程中启动"main"?

问题很简单.如何在另一个java进程中启动main方法?现在我这样做:

startOptions = new String[] {"java", "-jar", "serverstart.jar"};
new ProcessBuilder(startOptions).start();
Run Code Online (Sandbox Code Playgroud)

但他们要求我不要使用外部.jar文件.serverstart.jar显然有一个main方法,但是可以在不调用.jar文件的情况下在另一个进程中调用该main方法吗?

我在考虑这样的事情:

new ProcessBuilder(ServerStart.main(startOptions)).start();
Run Code Online (Sandbox Code Playgroud)

但我不知道是否存在这样的事情.

亲切的问候,

java multithreading program-entry-point process

12
推荐指数
2
解决办法
8475
查看次数

在prolog中拆分列表

我对Prolog很新,我需要一些小问题的帮助:

我试图在两个列表中拆分一对夫妇.第一个列表包含具有给定键的所有对,第二个列表包含所有其他对象.

这是我到目前为止的代码:

splitList([],_,[],[]).
splitList([(A,X)|Rest], B, [Elem1|List1], [Elem2|List2]):-
    (
        A == B
    ->
        Elem1 = (A,X),
        splitList(Rest, B, List1, [Elem2|List2])
    ;
        Elem2 = (A,X),
        splitList(Rest, B, [Elem1|List1], List2)
    ).
Run Code Online (Sandbox Code Playgroud)

当我尝试测试时,这就是我得到的:

[trace] [3] 143 ?- splitList([(1,yellow),(1,blue),(2,yellow),(2,blue)],1,X,Y).
   Call: (37) splitList([ (1, yellow), (1, blue), (2, yellow), (2, blue)], 1, _G4821, _G4822) ? creep
   Call: (38) 1==1 ? creep
   Exit: (38) 1==1 ? creep
   Call: (38) _G4928= (1, yellow) ? creep
   Exit: (38) (1, yellow)= (1, yellow) ? creep
   Call: (38) splitList([ (1, …
Run Code Online (Sandbox Code Playgroud)

split element list prolog

4
推荐指数
1
解决办法
4560
查看次数