我正在构建一个Ruby 2.7 Lambda应用程序。
我的应用程序依赖于github中存在的gem。
gem 'my-gem', git: 'https://github.com/my-org/my-gem', branch: 'main'
我想编写一个脚本,可以构建包含此依赖项的部署zip文件。
当我运行bundle install
时,我的gem安装到供应商/bundle/ruby/2.7.0/bundler/gems/my-gem-GITHASH。
对于Lambda包装,我认为我需要构造以下内容
下面的脚本操作可以组装这个结构,但我希望我有一个更简单的方法。
cd vendor/bundle/ruby/2.7.0/bundler/gems/my-gem-*
# build the git gem (*.gem)
gem build
# copy the gem and the gemspec to the vendor/bundle/ruby/2.7.0 directories
cp *.gem ../../../gems
cp *.gemspec ../../../specifications/my-gem-1.0.0.gemspec
# upack the .gem file in the proper directory
cd ../../../gems
gem unpack *.gem
# return to the working directory
cd ../../../../..
# Zip the dependencies
zip -r deploy.zip \
vendor/bundle/ruby/2.7.0/gems \
vendor/bundle/ruby/2.7.0/specifications \
vendor/bundle/ruby/2.7.0/extensions \
lib
我很想找到一个更简单的方法来解决这个问题。
另一种解决方案是将bundler/gems
路径添加到$LOAD_PATH
,如下所示:
load_paths = Dir['./vendor/bundle/ruby/2.7.0/bundler/gems/**/lib']
$LOAD_PATH.unshift(*load_paths)
(在lambda_function.rb
的最顶端)
运行bundle install--部署
应该执行您想要的操作(留档页面)。
更新:AWS文档似乎使用bundle install--path供应商/bundle
。
看完前面的文档,你会发现使用 Blade 开发Web应用是简单的、快速的,当然也功归于约定。 我们使用 Maven 构建项目,打包同时也可以用它,如果你对 Maven 插件熟悉的话可能也用过了, 当然没用过也没关系,你只需要按照下面的操作配置一下即可。 打包工程 添加插件 <build> <finalName>hello</finalName> <plugins>
打包 直接使用下面命令,就可以把vue项目打包: $ npm run build 如下: siwei@siwei-linux:/workspace/test_vue_0613$ npm run build > test_vue_0613@1.0.0 build /workspace/test_vue_0613 > node build/build.js ⠦ building for prod
Spring和Spring Boot都支持maven和Gradle通用打包管理技术。 Spring Boot相对Spring的一些优点: 提供嵌入式容器支持; 使用命令java -jar独立运行jar; 部署时可以灵活指定配置文件; 最近项目是分布式的项目,都是通过分项目打包部署,然后部署在docker中运行。
当我将Ignite Client打包到jar并包含在war文件中时,在下面的stacktrace中遇到了这个问题。然后将此war文件部署到WebLogic中。 但是,当通过war文件访问它时,并且通过web服务访问时,出现了上述错误(在war文件中包含的jar内启动了Ignite客户端)。尝试使用Java Serializable和Binarylizable,但仍然遇到这个问题。有一种感觉是因为包
二进制运行 git clone https://github.com/apache/shardingsphere-ui.git; 运行 mvn clean install -Prelease; 获取安装包 /shardingsphere-ui/shardingsphere-ui-distribution/target/apache-shardingsphere-${latest.release.v
部署启动 执行以下命令,编译生成 ShardingSphere-Scaling 二进制包: git clone https://github.com/apache/shardingsphere.git; cd shardingsphere; mvn clean install -Prelease; 发布包所在目录为:/shardingsphere-distribution/shardingsp