首页 > 解决方案 > 为 Synology 问题编译

问题描述

尝试编译 tomcat 9 以在我的 synology nas 上运行时,出现以下错误

[james@centos-compile toolkit]$ sudo ./pkgscripts/PkgCreate.py -I --no-sign ${project}
[sudo] password for james: 
usage: PkgCreate.py [-h] [-p PLATFORMS] [-e ENV_SECTION] [-v ENV_VERSION]
                    [-x DEP_LEVEL] [-b BRANCH] [-s SUFFIX] [-c] [-U] [-L] [-B]
                    [-I] [-i] [-S] [--build-opt BUILD_OPT]
                    [--install-opt INSTALL_OPT] [--print-log]
                    [--min-sdk SDK_VER]
                    package
PkgCreate.py: error: the following arguments are required: package
[james@centos-compile toolkit]$

我对此有点困惑,因为 ${project} 确实有包

[james@centos-compile source]$ ls 
conf  INFO  package.tgz  scripts  WIZARD_UIFILES

如果有人可以对此提供一些建议,我将不胜感激

此致

詹姆士

标签: compilationsynology

解决方案


我似乎有一个类似的问题。我已将 Tomcat9 嵌入到我的 springboot java-app,但由于与 Tomcat9 相关的崩溃,它无法在我的 Synology NAS 上启动。我目前正在寻找答案,但恐怕它不适用于 Synology NAS 上的 tomcat9。

如果您进入 SynologyNAS 网络界面,您会发现 Tomcat6 和 Tomcat7 作为 NAS 的可用插件。我开始认为不能安装 Tomcat8 或 Tomcat9 是有充分理由的。可能是因为 Synology NAS 不支持它,因此它也不能作为嵌入式 servlet 工作。

请注意,我完全不确定,但这是我的理论。我的全新 NAS 不支持任何最新版本,这对我来说似乎很奇怪。

如果你找到方法,请分享!能够免费使用我的 NAS 而不是支付主机费用让主机 24/7 在线真是太好了。这是我投资新 NAS 的一个重要原因,但我是编码新手,似乎在选择 Synology 或 NAS 而不是构建实际服务器时犯了一个致命的错误。

我在 Synology 社区中询问过这个问题,但没有任何答案。见链接: https ://community.synology.com/enu/forum/1/post/125742

编辑:考虑到我没有像你一样编译或部署我的应用程序,我仍然不确定我们是否有同样的问题,但我终于设法从我的 NAS 运行我的 webapp!我用 Jetty 代替了 Tomcat9。假设您像我一样使用 springboot,您可以在 pom.xml 文件中这样替换它:

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <exclusions>
            <exclusion>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-tomcat</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-jetty</artifactId>
    </dependency>

推荐阅读