小编Ami*_*mar的帖子

npm install --force 和 npm install --legacy-peer-deps 之间有什么区别?

我正在尝试使用npm install. 但它失败了。

错误日志

npm ERR! code ERESOLVE
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR! 
npm ERR! While resolving: my-first-app@0.0.0
npm ERR! Found: @angular/compiler@11.0.9
npm ERR! node_modules/@angular/compiler
npm ERR!   @angular/compiler@"~11.0.0" from the root project
npm ERR!   peer @angular/compiler@"11.0.9" from @angular/compiler-cli@11.0.9
npm ERR!   node_modules/@angular/compiler-cli
npm ERR!     dev @angular/compiler-cli@"~11.0.0" from the root project
npm ERR!     peer @angular/compiler-cli@"^11.0.0" from @angular-devkit/build-angular@0.1100.7
npm ERR!     node_modules/@angular-devkit/build-angular
npm ERR!       dev @angular-devkit/build-angular@"~0.1100.0" from the root project
npm ERR! 
npm ERR! Could not …
Run Code Online (Sandbox Code Playgroud)

node.js npm node-modules typescript angular

9
推荐指数
1
解决办法
2万
查看次数

我可以创建一个在特定条件下不呈现的角度组件吗?

我创建了一个非常简单的调试组件,看起来像这样。

调试.component.html

<ng-container *ngIf="debugging">
    <ng-content></ng-content>
</ng-container>



export class DebugComponent implements OnInit {

  constructor() { }

  ngOnInit() {
    this.debugging =  environment.debugging;
  }

  debugging: boolean;


}
Run Code Online (Sandbox Code Playgroud)

我像这样使用它

 <app-debug>{{data | json}}</app-debug>
Run Code Online (Sandbox Code Playgroud)

我有一个环境变量,如果我想查看调试数据,我可以打开和关闭它。

export const environment = {
...
  debugging: false,
...
}
Run Code Online (Sandbox Code Playgroud)

但是,我注意到当我渲染我的页面时,即使我有调试 = false,在我渲染的 HTML 中,我仍然看到这样的行

<app-debug _ngcontent-ydq-c8="" _nghost-ydq-c16=""><!--bindings={
  "ng-reflect-ng-if": "false"
}--></app-debug>
Run Code Online (Sandbox Code Playgroud)

它是不可见的,但如果可能的话,我真的不希望我的调试代码被部署到 prod。

是否可以创建在特定条件下不呈现的组件?

typescript angular

7
推荐指数
2
解决办法
226
查看次数

将 jdk 8 迁移到 jdk 11,mysql 抛出 SSL 错误

mysql 连接器版本是 5.1.42,ds.properties.j2 中的连接器字符串是:

ds.datasource.name=coreDS
ds.datasource.driver=com.mysql.jdbc.Driver
ds.datasource.url=jdbc:mysql://{{ core_db_host }}:{{ core_db_port }}/{{ core_db_schema }}?useSSl=true&amp;requireSSL=true&amp;verifyServerCertificate=false
ds.datasource.username={{ core_db_user }}
ds.datasource.password={{ core_db_password }}
Run Code Online (Sandbox Code Playgroud)

出现以下错误:

> TASK [jetty : Jetty | Report errors in
> /opt/jetty/base/default/logs/error.log]
> **************************************************** ok: [localhost] => {
>     "msg": "ERRORS found in /opt/jetty/base/default/logs/error.log: 2020-07-17 11:54:44,652 ERROR [com.zaxxer.hikari.pool.HikariPool]
> (main) coreDS - Exception during pool initialization.\n2020-07-17
> 11:54:44,659 ERROR [org.springframework.web.context.ContextLoader]
> (main) Context initialization failed" } Caused by:
> javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol
> is disabled or cipher suites are …
Run Code Online (Sandbox Code Playgroud)

java mysql

5
推荐指数
1
解决办法
4295
查看次数

为什么Java有4种不同类型的引用?

直到今天,我才意识到 Java 有四种主要的引用类型。

\n
    \n
  1. 强引用:默认引用类型Java
  2. \n
  3. 弱引用:如果一个对象具有弱引用,则GC即使有足够的内存,也会在下次运行时回收该对象\xe2\x80\x99s内存。
  4. \n
  5. 软引用:如果一个对象有软引用,那么GC只有当它急需一些内存时才回收这个对象\xe2\x80\x99s内存。
  6. \n
  7. 幻像引用:如果一个对象有幻像引用,那么它就符合垃圾回收的条件。但是,在 GC 之前,JVM 将应该被垃圾收集的对象放入一个名为 的队列中reference queue
  8. \n
\n

我理解了基本概念,并编写了一个小程序来理解每种引用类型的工作原理。

\n
import java.lang.ref.PhantomReference;\nimport java.lang.ref.ReferenceQueue;\nimport java.lang.ref.SoftReference;\nimport java.lang.ref.WeakReference;\n\nclass User \n{ \n    public User info() \n    { \n        System.out.println("Info method invoked from User class");\n        return null;\n    }   \n} \n\npublic class ReferencesExample \n{ \n    public static void main(String[] args) \n    { \n        //Strong Reference\n        User userRefObj = new User(); \n        System.out.println("1 :" …
Run Code Online (Sandbox Code Playgroud)

java oop garbage-collection reference-type java-8

5
推荐指数
1
解决办法
1117
查看次数

AWS 安全组与网络 ACL

我的 AWS 控制台中有多个 EC2 实例,我想通过添加防火墙规则/策略来保护它们。我读到 AWS 提供Network ACLsSecurity Groups实现相同的目标。

从我阅读的内容中,我对两者有了基本的了解。

  • 安全组是 EC2 防火墙(一级防御),与实例相关联,本质上是有状态的,即传入规则的任何更改也会影响传出规则。一个实例可以有多个 SG。

  • 网络 ACL是子网防火墙(二级防御),绑定到子网,本质上是无状态的。一个子网只能有一个 NACL。

我的问题是:

  1. 当我们有 NACL 时,为什么我们需要 SG?
  2. 当我们有 SG 时,为什么我们需要 NACL?
  3. 我们是否应该一起使用 SG 和 NACL 来使我们的 AWS 应用程序更加安全?
  4. 何时选择 NACL 而非 SG 或 SG 而非 NACL?

我想知道,鉴于我有多个实例,我应该将它们全部添加到VPC并创建一个,Network ACL还是应该Security Group为每个实例分配一个。

需要建议和参考以及类似场景应遵循的最佳实践。

非常感谢!

firewall amazon-ec2 amazon-web-services amazon-vpc aws-security-group

3
推荐指数
2
解决办法
353
查看次数

私有成员可访问性

我有一个用例,我将其简化为以下程序:

public class A {
   private int x = 100;

    class B {
       private int y = new A().x;
    }

  public static void main(String []s) {
    System.out.println(new A().new B().y);
  }
}
Run Code Online (Sandbox Code Playgroud)

该程序运行良好并打印100.

根据文档(访问修饰符):private修饰符确保该字段只能在其自己的类中访问。但在上面的程序中,它似乎自相矛盾。

这是那个意思吗?

  1. 内部类可以访问外部类的私有成员。
  2. 内部类的私有变量可以在外部类中访问。

请帮我理解。

java java-8

2
推荐指数
1
解决办法
140
查看次数

Java11 引入的 Z 垃圾收集器有多稳定?

我正在使用Java 11新的 Z 垃圾收集器 (ZGC) 似乎很有前途。

文档说它使用了一些低延迟垃圾收集机制,这样GC暂停时间永远不会超过10 ms,非常好地处理大堆,并允许将未使用的堆内存返回给操作系统,而旧的 GC 不存在

我担心的是 - ZGC 的稳定性如何,如果在生产中继续推进,是否存在风险?

谢谢!

java garbage-collection java-11 zgc

1
推荐指数
1
解决办法
368
查看次数

无法向 AWS Lambda 添加触发器

我正在尝试将SQS作为触发器添加到我在 AWS-VPC 中运行的Lambda函数,但它引发错误为:

在此处输入图片说明

An error occurred when creating the trigger: The provided execution role does not have permissions to call ReceiveMessage on SQS (Service: AWSLambda; Status Code: 400; Error Code: InvalidParameterValueException; Request ID: d34b7525-5c69-4434-a015-112e8e74f447; Proxy: null)
Run Code Online (Sandbox Code Playgroud)

尝试通过添加AWSLambdaVPCAccessExecutionRole到角色的策略以及通过 IAM。但没有运气!

我无法弄清楚我在哪里犯了错误?请帮助我,如果有人过去有类似的经历或知道如何解决它。提前谢谢你!

amazon-sqs amazon-web-services amazon-iam amazon-vpc aws-lambda

1
推荐指数
2
解决办法
1602
查看次数

AWS Lambda 与 SQS 的连接超时

我正在处理一项涉及在 VPC 内运行的Lambda 函数 的任务。

此函数应该将消息推送到SQS,并且 lambda 执行角色具有策略:添加了AWSLambdaSQSQueueExecutionRoleAWSLambdaVPCAccessExecutionRole

拉姆达函数:

# Create SQS client
sqs = boto3.client('sqs')

queue_url = 'https://sqs.ap-east-1a.amazonaws.com/073x08xx43xx37/xyz-queue'

# Send message to SQS queue
response = sqs.send_message(
    QueueUrl=queue_url,
    DelaySeconds=10,
    MessageAttributes={
        'Title': {
            'DataType': 'String',
            'StringValue': 'Tes1'
        },
        'Author': {
            'DataType': 'String',
            'StringValue': 'Test2'
        },
        'WeeksOn': {
            'DataType': 'Number',
            'StringValue': '1'
        }
    },
    MessageBody=(
        'Testing'
     )
)

print(response['MessageId'])
Run Code Online (Sandbox Code Playgroud)

测试执行结果如下:

{
  "errorMessage": "2020-07-24T12:12:15.924Z f8e794fc-59ba-43bd-8fee-57f417fa50c9 Task timed out after 3.00 seconds"
}
Run Code Online (Sandbox Code Playgroud)

我将超时从基本设置增加到 5 …

amazon-sqs amazon-web-services amazon-vpc boto3 aws-lambda

0
推荐指数
2
解决办法
1450
查看次数