我们有一个具有一些“聊天”功能的应用程序,可以提出问题,用户可以使用一些预定义的选项进行回答:对于每个问题都会呈现一个新视图。其中一个选项是带有选择器的视图,从 iOS 16 开始,当带有选择器的视图消失时,此选择器会导致应用程序崩溃,并出现以下错误:Thread 1: Fatal error: Index out of range
定位于class AppDelegate: UIResponder, UIApplicationDelegate {
。在日志中我可以看到这个错误:Swift/ContiguousArrayBuffer.swift:600: Fatal error: Index out of range
。
为了解决这个问题,我将代码重构到最低限度,甚至没有使用选择器,但仍然导致错误发生。当我从此视图中删除选择器时,它会再次工作。
查看发生错误的地方
struct PickerQuestion: View {
@EnvironmentObject() var questionVM: QuestionVM
let question: Question
var colors = ["A", "B", "C", "D"]
@State private var selected = "A"
var body: some View {
VStack {
// When removing the Picker from this view the error does not occur anymore
Picker("Please choose a value", selection: $selected) …
Run Code Online (Sandbox Code Playgroud) 我们一直在使用 Elastic Beanstalk 在公司的 Tomcat 上运行 Java (8) 应用程序,没有出现任何问题。现在我们决定转向 Java 11。我们像之前为 Java 8 应用程序所做的那样使用 CloudFormation 设置环境,但现在我们使用以下解决方案堆栈:“64 位 Amazon Linux 2 v4.1.1 运行 Tomcat 8.5 Corretto 11” (也尝试过 v4.1.2)。一切工作正常,但看起来请求日志功能在 Elastic beanstalk 中不再工作(最后 100 行和完整日志)。我还向应用程序服务器添加了一个密钥对,以检查位于 /var/log/tomcat/ 的 ec2 服务器上的日志,但我们找不到 catalina.out 文件(只有日期如下的 catalina 文件:catalina.2020-10 -14.log)。这些文件仅包含我们使用的库的日志,但不包含我们发送到标准系统输出的日志。我们有时合作的另一家公司在此解决方案堆栈上也遇到了同样的问题。
有没有人在此解决方案堆栈上遇到相同的问题并找到解决方案?
这是我们的 CloudFormation 配置 (YAML):
Application:
Type: AWS::ElasticBeanstalk::Application
Properties:
Description: Application backend
ApplicationVersion:
Type: AWS::ElasticBeanstalk::ApplicationVersion
Properties:
ApplicationName:
Ref: Application
Description: !Ref AppVersion
SourceBundle:
S3Bucket: !Ref BeanstalkSourceS3
S3Key: !Ref BuildFileName
AppEC2ServiceRole:
Type: AWS::IAM::Role
Properties:
AssumeRolePolicyDocument:
Version: '2012-10-17'
Statement:
- …
Run Code Online (Sandbox Code Playgroud)