AEM 实例未使用启动命令启动
AEM instance is not getting started with start command
我在 Redhat linux 服务器上使用 AEM6.3。我在两个不同的 linux 服务器上有一位作者和一个发布实例。
我可以使用 crx-quickstart/bin 文件夹下的启动命令 (./start) 启动作者实例。
但是我的发布实例没有开始使用 ./start 命令。我收到“Sling 已在 /mnt/crx/publish/crx-quickstart 中激活
" stdout.log 文件中的错误如下-
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256M; support was removed in 8.0
06.09.2017 46:24:38.789 *INFO * [main] Setting sling.home=crx-quickstart (command line)
06.09.2017 46:24:38.789 *INFO * [Apache Sling Control Listener@/277.0.0.9:36038] /277.0.0.9:44314>status
06.09.2017 46:24:38.790 *INFO * [Apache Sling Control Listener@/277.0.0.9:36038] /277.0.0.1:44314<OK
06.09.2017 46:24:38.791 *INFO * [main] Sent 'status' to /277.0.0.9:36038: OK
06.09.2017 46:24:38.792 *ERROR* [main] Sling already active in /mnt/crx/publish/crx-quickstart
我看到一些帖子提到了同样的错误,但它们是针对 windows 系统的。
如何在 linux 中解决这个问题?
看看ControlListener.java which is referred in the sling launchpad documentation
具体来说,listen
方法:
boolean listen() {
final File configFile = getConfigFile();
if (configFile.canRead() && statusServer() == 0) {
// server already running, fail
Main.error("Sling already active in " + this.slingMain.getSlingHome(), null);
return false;
}
.
.
.
}
listen
方法调用getConfigFile
方法:
private File getConfigFile() {
final File configDir = new File(this.slingMain.getSlingHome(), "conf");
return new File(configDir, "controlport");
}
所以基本上,默认情况下(使用默认 AEM 安装)它会查找文件:crx-quickstart/conf/controlport
(在 sling launchpad documentation 中有一些记录)如果它找到并可以读取它,那么它将失败,因为它认为有一个 运行ning 实例。我的假设是您通过终止进程或发生意外关闭停止了 运行ning 实例。
无论哪种方式,试试这个:
- 复制文件:
crx-quickstart/conf/controlport
到不同的位置(作为备份)
- 删除文件
crx-quickstart/conf/controlport
- 运行 你的启动命令
这是假设,因为我无法重现,但查看启动板代码,这似乎可以解决您的问题。
我在 Redhat linux 服务器上使用 AEM6.3。我在两个不同的 linux 服务器上有一位作者和一个发布实例。 我可以使用 crx-quickstart/bin 文件夹下的启动命令 (./start) 启动作者实例。 但是我的发布实例没有开始使用 ./start 命令。我收到“Sling 已在 /mnt/crx/publish/crx-quickstart 中激活 " stdout.log 文件中的错误如下-
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256M; support was removed in 8.0
06.09.2017 46:24:38.789 *INFO * [main] Setting sling.home=crx-quickstart (command line)
06.09.2017 46:24:38.789 *INFO * [Apache Sling Control Listener@/277.0.0.9:36038] /277.0.0.9:44314>status
06.09.2017 46:24:38.790 *INFO * [Apache Sling Control Listener@/277.0.0.9:36038] /277.0.0.1:44314<OK
06.09.2017 46:24:38.791 *INFO * [main] Sent 'status' to /277.0.0.9:36038: OK
06.09.2017 46:24:38.792 *ERROR* [main] Sling already active in /mnt/crx/publish/crx-quickstart
我看到一些帖子提到了同样的错误,但它们是针对 windows 系统的。
如何在 linux 中解决这个问题?
看看ControlListener.java which is referred in the sling launchpad documentation
具体来说,listen
方法:
boolean listen() {
final File configFile = getConfigFile();
if (configFile.canRead() && statusServer() == 0) {
// server already running, fail
Main.error("Sling already active in " + this.slingMain.getSlingHome(), null);
return false;
}
.
.
.
}
listen
方法调用getConfigFile
方法:
private File getConfigFile() {
final File configDir = new File(this.slingMain.getSlingHome(), "conf");
return new File(configDir, "controlport");
}
所以基本上,默认情况下(使用默认 AEM 安装)它会查找文件:crx-quickstart/conf/controlport
(在 sling launchpad documentation 中有一些记录)如果它找到并可以读取它,那么它将失败,因为它认为有一个 运行ning 实例。我的假设是您通过终止进程或发生意外关闭停止了 运行ning 实例。
无论哪种方式,试试这个:
- 复制文件:
crx-quickstart/conf/controlport
到不同的位置(作为备份) - 删除文件
crx-quickstart/conf/controlport
- 运行 你的启动命令
这是假设,因为我无法重现,但查看启动板代码,这似乎可以解决您的问题。