小编Def*_*ozo的帖子

SpringBoot - 制作jar文件 - 在META-INF/spring.factories中找不到自动配置类

使用Intellij启动我的应用程序时一切正常.但是当我做了fatJar并执行时:

java -jar myapp.jar
Run Code Online (Sandbox Code Playgroud)

我懂了:

16:37:44.194 [main] ERROR org.springframework.boot.SpringApplication - Application startup failed
org.springframework.beans.factory.BeanDefinitionStoreException: Failed to process import candidates for configuration class [pl.mypackage.Main]; nested exception is java.lang.IllegalArgumentException: No auto configuration classes found in META-INF/spring.factories. If you are using a custom packaging, make sure that file is correct.
        at org.springframework.context.annotation.ConfigurationClassParser.processDeferredImportSelectors(ConfigurationClassParser.java:489)
        at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:191)
        at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:321)
        at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:243)
        at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:273)
        at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:98)
        at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:681)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:523)
        at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122)
        at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759)
        at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:369)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:313)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1185)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1174)
        at pl.mypackage.Main.main(Main.java:39)
Caused by: java.lang.IllegalArgumentException: …
Run Code Online (Sandbox Code Playgroud)

java spring intellij-idea spring-boot

49
推荐指数
6
解决办法
5万
查看次数

使用Gradle的Java项目和在Intellij IDEA中构建jar文件 - 如何操作?

有没有关于如何使用Gradle创建Java项目然后构建jar文件的教程?

我遇到了各种各样的问题.当我创建Java项目然后添加Gradle with File - > New - > Module - > Gradle - > ...然后我得到一些关于Java EE websocket的错误(我使用的是Ultimate Edition)但是没关系,我通过选择文件 - >新建 - >项目... - > Gradle - >来设法创建该项目...现在我的Gradle正常工作的Java项目(我可以在IDE中调试)但是当我尝试创建时一个工件(jar文件)我得到各种错误取决于我在项目结构设置中搞砸了多少...

Buildfile: build.xml does not exist!
Build failed
Run Code Online (Sandbox Code Playgroud)

要么

Error: Could not find or load main class Main
Run Code Online (Sandbox Code Playgroud)

我认为这个项目现在是如此混乱,最好的解决方案是创建另一个新项目,只需将Main.class和Gradle的依赖项复制到这个新项目中.

但是如何正确地做到这一点?

java jar intellij-idea java-ee gradle

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

HikariPool-1 - 连接不可用,请求超时

我使用 HikariCP 2.4.7 作为连接池。启动应用程序后一切都很好,但一段时间后没有调用,getConnection()当我尝试执行getConnection()以下操作时出现此错误:

java.sql.SQLTransientConnectionException: HikariPool-1 - Connection is not available, request timed out after 42734ms.
    at com.zaxxer.hikari.pool.HikariPool.createTimeoutException(HikariPool.java:555)
    at com.zaxxer.hikari.pool.HikariPool.getConnection(HikariPool.java:188)
    at com.zaxxer.hikari.pool.HikariPool.getConnection(HikariPool.java:147)
    at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:99)
    at pl.airly.database.ComplexOperations.getSensorDataFromArea(ComplexOperations.java:310)
    at pl.airly.database.ComplexOperations.getMeasurementsInAreaWithinTimeFrame(ComplexOperations.java:201)
    at pl.airly.ResponseGenerator.getResponseAdequateToRequest(ResponseGenerator.java:139)
    at sun.reflect.GeneratedMethodAccessor24.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:221)
    at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:136)
    at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:114)
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827)
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738)
    at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
    at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:622)
    at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
    at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)
    at …
Run Code Online (Sandbox Code Playgroud)

java database-connection connection-pooling jooq hikaricp

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

Terraform-尽管变量已在同一文件中声明,但找不到变量的资源

Terraform找不到在引用所在的文件中声明的资源。

看来这行正在引起麻烦:role_arn = "${aws_iam_role.newsapi_lambda_codepipeline.arn}"。它找不到newsapi_lambda_codepipeline哪个声明为resource "aws_iam_role" "newsapi_lambda_codepipeline" { ... }

这是我的main.tf:

resource "aws_s3_bucket" "newsapi_lambda_builds" {
  bucket = "newsapi-lambda-builds"
  acl    = "private"
}

resource "aws_iam_role" "newsapi_lambda_codebuild" {
  name = "newsapi-lambda-codebuild"

  assume_role_policy = <<EOF
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": [
        "s3:GetObject",
        "s3:GetObjectVersion",
        "s3:GetBucketVersioning"
      ],
      "Resource": "arn:aws:s3:::newsapi_lambda_builds",
      "Effect": "Allow"
    },
    {
      "Action": [
        "s3:PutObject"
      ],
      "Resource": [
        "arn:aws:s3:::newsapi_lambda_builds"
      ],
      "Effect": "Allow"
    },
    {
      "Action": [
        "lambda:invokefunction",
        "lambda:listfunctions"
      ],
      "Resource": "*",
      "Effect": "Allow"
    },
    {
      "Effect": "Allow", …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services terraform devops-services hcl terraform-provider-aws

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

如何使用jOOQ在PostGIS中选择面内的点?

我有一张桌子sensor_location

CREATE TABLE public.sensor_location (
  sensor_id INTEGER NOT NULL,
  location_time TIMESTAMP WITHOUT TIME ZONE NOT NULL,
  location_point public.geometry NOT NULL,
  CONSTRAINT sensor_location_sensor_id_fkey FOREIGN KEY (sensor_id)
    REFERENCES public.sensor(id)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION
    NOT DEFERRABLE
) 
Run Code Online (Sandbox Code Playgroud)

我想要一个查询,该查询将返回sensor_ids的传感器和location_times在选定多边形内。

查询应类似于:

SELECT 
  sensor_id,
  location_time,
FROM 
  public.sensor_location
WHERE
  ST_Within(location_point, ST_Polygon(ST_GeomFromText('LINESTRING(-71.050316 48.422044,-71.070316 48.422044,-71.070316 48.462044,-71.050316 48.462044,-71.050316 48.422044)'), 0));
Run Code Online (Sandbox Code Playgroud)

如何使用jOOQ做到这一点?jOOQ甚至可以与PostGIS一起使用吗?我是否必须编写自己的SQL查询并仅使用jOOQ执行它?

我找到了,但是我不知道如何使用它。我仍然是Java新手。

java sql postgresql postgis jooq

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

如何在浏览器中有效地从大zip中提取特定的json?

我想message_1.json在 Web 浏览器中提取从大 (13 GB) zip 文件命名的文件(使用 javascript)。

这些文件位于zip 文件中的messages/inbox/some_random_name_xsfdscd/message_1.jsonmessages/inbox/some_random_name_sfasggf/message_1.json等位置。messages/inbox/some_random_name_polsnbd/message_1.json

我尝试使用JSZip。不幸的是,它必须先加载整个 zip,然后才能处理它。它需要太多的时间和内存,通常会导致页面崩溃。

另外,还有一个zip-js库,它可以在解压缩之前获取文件树。但是,它无法处理大于 4 GB 的 zip 文件。

那么,是否可以在网络浏览器中从大 zip 中仅提取特定文件,而不占用太多内存和时间?如果是,怎么办?

javascript optimization zip unzip

5
推荐指数
0
解决办法
571
查看次数

IntelliJ IDEA 没有突出显示引发异常的代码 - 如何打开它?

我有一个方法:

private void test() throws NullPointerException {
        System.out.println("blabla");
        throw new NullPointerException();
    }
Run Code Online (Sandbox Code Playgroud)

抛出 NullPointerException 但当我尝试调用此方法时:

test();
Run Code Online (Sandbox Code Playgroud)

IntelliJ IDEA 不会警告我它会抛出 NullPointerException。IntelliJ 应该警告我这一点,对吧?

我发现在设置 -> 编辑器 -> 检查中有打开/关闭检查,但我找不到这个检查。

如何开启?

@编辑

好吧,我了解到 NullPointerException 是一种 IntelliJ 不会突出显示的异常类型,因为这是一种严重错误。其他异常如 IOException 正在突出显示。但是,是否可以打开突出显示 NullPointerException ?

java intellij-idea

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

如何使用PlatformIO更改VSCode中串行监视器的默认波特率?

我有VSCode和PlatformIO插件.当我启动串行监视器时,它总是以9600波特率开始.我想改变它,所以它始终以115200开头.

我可以通过按CTRL + T,b,115200更改已经运行的串行监视器的波特率,输入但我不想每次启动串行监视器时都这样做.

我找不到任何设置.我尝试speed = 115200在platformio.ini上添加一行但是没有改变任何东西.

baud-rate visual-studio-code platformio vscode-settings

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

如何为未经身份验证的用户使用 AWS Cognito?

我想使用 AWS Cognito(用户池和身份池)来管理对我的 Web 应用程序的访问。

这个网络应用程序是一个报告生成器。它从收集的传感器数据生成报告。

请求数据的可能范围因用户而异。某些用户应该只能访问指定区域或日期范围内的特定传感器 ID 或传感器。

但是,我想公开一些报告 - 例如。来自纽约的传感器的数据应该可供所有人使用,而无需注册/登录。

至于经过身份验证的用户,我想我可以向 Cognito 用户池添加一个自定义属性,其中包含指定用户应该有权访问的传感器 ID。然后,在使用 Cognito 注册并登录后,用户可以向我的应用程序发出请求,我将验证 JWT 并从有效负载中获取有关用户可以请求哪些传感器的信息。

不幸的是,我不确定如何处理未经身份验证的用户。我是这样看的:

  1. 用户导航到包含特定公共报告的页面。例如。https://example.com/reports/new-york/
  2. 前端 (React.js) 以某种方式使用自定义属性custom:city=签署了 JWT New York
  3. 前端向我的应用程序发出请求,如果请求仅包含对纽约传感器的查询,我的应用程序会验证 JWT 并允许将数据发送给用户。

也许我应该创建一个用户名和密码已知的用户并在前端对其进行硬编码?

这是使用 Cognito 的正确方法吗?我应该以其他方式实现它吗?

amazon-web-services jwt amazon-cognito

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

我怎样才能重写这个javascript代码,以便它会引用每个选项框?

如何重写这个javascript代码,以便它将引用每个选项框(不仅仅是第一个)?

<html>
<div id="form123">
    <select id="day" name="day">
        <option value="abc" name="abc" id="abc">abc</option>
        <option value="other" name="other" id="other">other...</option>
    </select>
    <select id="day" name="day">
        <option value="abc" name="abc" id="abc">abc</option>
        <option value="other" name="other" id="other">other...</option>
    </select>
    <select id="day" name="day">
        <option value="abc" name="abc" id="abc">abc</option>
        <option value="other" name="other" id="other">other...</option>
    </select>
    <script type="text/javascript">
        var selectmenu=document.getElementById("day")
        selectmenu.onchange=function(){
            var chosenoption=this.options[this.selectedIndex]
            if (chosenoption.value=="other"){
                var entered_date = window.prompt("Enter the date","");
                document.getElementById('other').value = entered_date;
                document.getElementById('other').text = entered_date;
            }
        }
    </script>
</div>
</html>
Run Code Online (Sandbox Code Playgroud)

到目前为止,只有当我选择第一个选项框时,对话框才会显示.

即使我选择了另一个选项框,我也希望对话框显示出来.

将来,将动态添加选项框.

javascript

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