当前位置: 首页 > 知识库问答 >
问题:

在ec2上安装playwright依赖项以在Java中使用它

勾喜
2023-03-14

我试图使用playwright在我的java应用程序中生成pdfs。这是一个很好的区域设置,但是当使用Beanstalk在ec2上部署它时,我会遇到以下错误:

Nov 11 09:17:32 ip-172-xx-xx-2 web: 2021-11-11 09:17:32.927 ERROR 17681 --- [io-5000-exec-10] o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is com.microsoft.playwright.PlaywrightException: Error {
Nov 11 09:17:32 ip-172-xx-xx-2 web: message='Host system is missing dependencies!
Nov 11 09:17:32 ip-172-xx-xx-2 web: Missing libraries are:
Nov 11 09:17:32 ip-172-xx-xx-2 web: libatk-1.0.so.0
Nov 11 09:17:32 ip-172-xx-xx-2 web: libatk-bridge-2.0.so.0
Nov 11 09:17:32 ip-172-xx-xx-2 web: libcups.so.2
Nov 11 09:17:32 ip-172-xx-xx-2 web: libxkbcommon.so.0
Nov 11 09:17:32 ip-172-xx-xx-2 web: libXcomposite.so.1
...
mvn exec:java -e -Dexec.mainClass=com.microsoft.playwright.CLI -Dexec.args="install-deps"

共有1个答案

汪明德
2023-03-14

缺少依赖项!

好吧,与其担心依赖关系,为什么不把它们和应用程序的代码一起打包到一个Uber罐子里呢

这可以使用mnv轻松地完成。通过在POM文件的plugin部分中包含maven-assembly-plugin,您可以将Maven配置为从项目中构建一个Fat JAR。

configuration>
                <descriptorRefs>
                    <descriptorRef>jar-with-dependencies</descriptorRef>
                </descriptorRefs>
            </configuration>

            <executions>
                <execution>
                    <id>make-assembly</id>
                    <phase>package</phase>
                    <goals>
                        <goal>single</goal>
                    </goals>
                </execution>
            </executions>

这里有一个关于这个主题的更多细节的链接

这能解决你的问题吗?请在评论中告诉我

 类似资料:
  • 我正在试用AWS Codestar。我的目标是部署一个非平凡的lambdaendpoint,即处理程序具有依赖关系的地方。理想情况下,我希望能够在文件,但这似乎不是那么简单。具体地说,我想部署一个依赖于nltk的lambda处理程序,其中nltk标记器“punkt”的文件作为代码构建过程的一部分下载,并为lambda打包。 如何通过和?下面,我试图将依赖项安装到子目录,并将其包含在zip工件中。

  • 问题内容: 我是python的新手。最近,我有一个用python编写的项目,需要进行一些安装。我运行以下命令进行安装,但出现错误。 我在Google上搜索并找到了此链接,但我不太了解该帖子中的解决方案。 以下是我的requirements.txt文件: 有没有简单的方法来在此python项目中安装所有必需的依赖项? 编辑1 以下是的输出。 我已经安装了,但是pip命令仍然报告缺少此依赖项。 问题答

  • 问题内容: 使用npm,我们可以使用option 在全局安装模块。我们如何在package.json文件中执行此操作? 假设这些是我在package.json文件中的依赖项 当我运行时,我只想全局安装,其余的应该本地安装。有这个选项吗? 问题答案: 新注: 您可能不需要或不需要这样做。您可能想要做的就是将那些用于构建/测试等命令依赖关系的类型放在package.json 的部分中。 每当您在pac

  • 问题内容: 我对Linux相对较新,正在尝试为python安装pygame开发环境。当我运行setup.py时,它说我需要安装以下依赖项,其中之一是我找到并安装的(SDL)。但是,其他的则更加难以捉摸。 如果您能给我一些指导,我将不胜感激。 谢谢。 问题答案: 对于debian,有一个预构建的软件包。看这里。您应该能够使用或类似的方式安装它。

  • 问题内容: 我有一个Web应用程序: fooapp 。我有根。我想将所有依赖项安装在特定的中。我该怎么做呢? 我想要的是 可以说我有两个依赖项。我想以这样的目录结构结束: 我得到什么 当我跑步时, 我得到以下信息: npm在node_modules目录中复制我的应用程序目录,并将软件包安装在 另一个 node_modules目录中。 我了解这对于安装软件包很有意义。但是我不在其他地方使用Web应用