我正在尝试配置Maven以从Eclipse启动WebSphere Liberty Profile。无论如何,我发现它在Linux上运行但在Windows上不起作用。以下是pom.xml
上的设置。 (请注意,相关代码将在此处发布)
<pluginRepositories>
<pluginRepository>
<id>WASdev</id>
<name>WASdev Repository</name>
<url>http://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/wasdev/maven/repository/</url>
<layout>default</layout>
<snapshots>
<enabled>false</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</pluginRepository>
</pluginRepositories>
...
...
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>com.ibm.websphere.wlp.maven.plugins</groupId>
<artifactId>liberty-maven-plugin</artifactId>
<version>1.0</version>
<configuration>
<serverHome>D:\tool\wlp</serverHome>
<serverName>LP1</serverName>
</configuration>
<executions>
<execution>
<id>start-server</id>
<phase>pre-integration-test</phase>
<goals>
<goal>start-server</goal>
</goals>
<configuration>
<serverHome>D:\tool\wlp</serverHome>
<serverName>LP1</serverName>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</pluginManagement>
</build>
我在D:\tool\wlp
安装了Liberty Profile,并创建了一个名为LP1
的服务器。当我使用此目标启动服务器时:liberty:start-server
,我将遇到此错误:
[错误]无法执行目标 com.ibm.websphere.wlp.maven.plugins:自由 - Maven的插件:1.0:启动服务器 项目SpringSecurity4上的(default-cli):CWWKM2002E:无法调用 [D:\ tool \ wlp \ bin \ server.bat,start,LP1, - clean]。 RC = 22但是 预期= 0。
我不确定22意味着什么?忘记那个神秘的数字,只有IBM人可以解码这个数字。当我在cmd
&gt;上尝试此操作时mvn start LP1
,我有这个输出:
文件名,目录名或卷标语法不正确。 启动服务器LP1。服务器LP1启动失败。检查服务器日志 的信息。
日志的内容如下所示,但我仍然无法解码场景背后的消息。希望你们能帮忙。
arg0=LP1 arg1=--status:start exit=22
Command: "C:\Documents and Settings\kok.hoe.loh\Tool\jdk1.6.0_30\jre\bin\java"
-XX:MaxPermSize=256m "-javaagent:D:\tool\wlp\bin\tools\ws-javaagent.jar" -jar "D:\tool\wlp\bin\tools\ws-server.jar" --batch-file start LP1 --clean
Java home: C:\Documents and Settings\kok.hoe.loh\Tool\jdk1.6.0_30\jre
Install root: D:/tool/wlp/
System libraries: D:/tool/wlp/lib/
User root: D:/tool/wlp/usr/
Server config: D:/tool/wlp/usr/servers/LP1/
Server output: D:/tool/wlp/usr/servers/LP1/
答案 0 :(得分:2)
尝试从命令行启动WSLP时,我得到了相同的结果。在我的例子中,我将其追溯到已经因某种原因设置的LOG_FILE环境变量:
LOG_FILE=C:\Users\AA_EB0~1\AppData\Local\Temp\ihp_custom_batches.log
WSLP的server.bat也使用此变量,但假设它是相对的。执行以下命令时:
start /b "" !JAVA_CMD_QUOTED!w !JVM_OPTIONS! !JAVA_PARAMS_QUOTED! --batch-file !PARAMS_QUOTED! > "%X_LOG_DIR%\%X_LOG_FILE%" 2>&1
导致“文件名,目录名称或卷标语法不正确”。错误
由于我不知道删除现有环境变量的影响,我改变了
if not defined LOG_FILE (
set X_LOG_FILE=console.log
) else (
set X_LOG_FILE=!LOG_FILE!
)
到
set X_LOG_FILE=console.log
在server.bat中并且能够在没有问题的情况下启动WSLP。
答案 1 :(得分:1)
这看起来像PMR 91596问题,您需要获取一个iFix来配置更长的服务器启动超时(bootstrap.properties文件中的“server.start.wait.time”属性)。