小编mat*_*eal的帖子

即使添加依赖项后也会出现 javax.validation.NoProviderFoundException 异常

我是 Java 和 Maven 的新手。我可能会遗漏一些明显的东西,但我无法弄清楚。

我试图通过以下链接将 javax 验证添加到我的项目中: https: //www.baeldung.com/javax-validation

我添加了以下依赖项

      <dependency>
        <groupId>javax.validation</groupId>
        <artifactId>validation-api</artifactId>
        <version>2.0.1.Final</version>
      </dependency>
      <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-validator</artifactId>
        <version>6.0.13.Final</version>
      </dependency>
      <dependency>
        <groupId>org.glassfish</groupId>
        <artifactId>javax.el</artifactId>
        <version>3.0.0</version>
      </dependency>
Run Code Online (Sandbox Code Playgroud)

我也尝试过组 ids org.hibernate 和 org.hibernate.validator 。

但我在执行 buildDefaultValidatorFactory() 期间遇到运行时错误:

import javax.validation.Validation;
import javax.validation.Validator;
Validator validator = Validation.buildDefaultValidatorFactory().getValidator();
Run Code Online (Sandbox Code Playgroud)

我收到以下错误

Method threw 'javax.validation.NoProviderFoundException' exception.
Unable to create a Configuration, because no Bean Validation provider could be found. Add a provider like Hibernate Validator (RI) to your classpath.
Run Code Online (Sandbox Code Playgroud)

我缺少什么?如果您需要一些关键信息,请告诉我。我已经为此奋斗了几个小时。所以,提前致谢。

java hibernate maven

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

C ++-析构函数只是释放内存还是实际上删除了对象?

为了检查这一点,我运行了这个小的测试代码。

#include <iostream>
using namespace std;

class name {
public:
  int data;
  name(int data) {
    this->data = data;
  }
  void printData() {
    cout << data << endl;
  }
};

int main() {
  name* namePointer;
  {
    name n(5);
    namePointer = &n;
  }
  namePointer->printData();
}
Run Code Online (Sandbox Code Playgroud)

因此,有两个问题:

  1. name对象n在块内创建main和它的指针被保存,以确保它的析构函数被调用时,我们该块脱身。但是指针指向同一个对象,并且其成员函数仍然可以访问。这不是说还没有删除对象吗?

  2. 说我将其添加到我的name班级:

    ~name() {
        cout << "destructor called" << endl;
    }
    
    Run Code Online (Sandbox Code Playgroud)

    覆盖析构函数并且在其中不做任何事情(在中~name())是否可以防止删除对象?

编辑:感谢您的答复,它确实有所帮助。但是,请允许我知道这些否决票的原因,我认为这是一个非常好的问题。¯_(?)_ /¯

c++ pointers destructor memory-management

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

标签 统计

c++ ×1

destructor ×1

hibernate ×1

java ×1

maven ×1

memory-management ×1

pointers ×1