小编Pau*_*ulo的帖子

具有显式finalName的Maven将无法正常工作

1.背景

我的Maven项目有很多的模块和子模块与jarswars一切工作.我也可以在服务器上部署它而没有任何问题.

我决定遵循这个maven命名转换,我正在进行一些测试project.nameproject.build.finalName拥有一个合适的名称.

我定义project.name为根工件创建的模式是company-${project.artifactId},对于模块和子模块是${project.parent.name}-${project.artifactId}:

  • 公司的任何伪影的任何-模块1
  • 公司的任何伪影的任何-模块2-任何-submodule1
  • 公司的任何伪影的任何-模块2-任何-submodule2

模式project.build.finalName${project.name}-${project.version}:

  • 公司的任何伪影的任何-module1-1.0.jar
  • 公司的任何伪影的任何-模块2-任何-submodule1-2.0.jar
  • 公司的任何伪影的任何-模块2-任何-submodule2-3.0.war

但maven没有生成这些文件,而是给了我一个StackOverflowError.

2.重现错误的示例

你可以从github克隆这个例子:https://github.com/pauloleitemoreira/company-any-artifact

在github中,有一个master分支,它将重现此错误.还有only-modules分支,这是一个工作示例,用于${project.parent.name}生成finalName我想要的jar .

让我们考虑一个带有一个根pom工件,一个pom模块和一个子模块的maven项目.

-any-artifact
     |
     |-any-module      
           |
           |-any-submodule
Run Code Online (Sandbox Code Playgroud)

2.1任何神器

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.company</groupId>
    <artifactId>any-artifact</artifactId>
    <packaging>pom</packaging>
    <version>1.0-SNAPSHOT</version>

    <name>company-${project.artifactId}</name>

    <modules>
        <module>any-module</module>
    </modules>

    <!-- if remove finalName, maven will not …
Run Code Online (Sandbox Code Playgroud)

java stack-overflow maven maven-package

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

静态密钥为byte [],Key还是String?

我已经开始使用JJWT在我的服务器应用程序上处理JWT.

我的JWT秘密将存储在resources文件夹中,我将在Properties课程中加载秘密.

JJWT提供了三种方法来签署JWT,一个用途byte[],其他用途String和其他用途Key:

JwtBuilder signWith(SignatureAlgorithm var1, byte[] var2);

JwtBuilder signWith(SignatureAlgorithm var1, String var2);

JwtBuilder signWith(SignatureAlgorithm var1, Key var2);
Run Code Online (Sandbox Code Playgroud)

问题:关于安全性,字符集和其他问题,我应该使用哪些建议?

一会儿,我站着String,因为Properties回来了String.

java security jwt jjwt

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

如何将Parse ObjectId(String)转换为long?

Parse.com中的每个对象都有自己的ObjectId,这是一个包含10个字符的字符串,显然它是由这个正则表达式创建的:[0-9a-zA-Z]{10}.

Parse中ObjectId的示例:

  • X12wEq4sFf
  • Weg243d21s
  • zwg34GdsWE

我想将此String转换为Long,因为它将节省内存并改善搜索.(使用UTF-8的10个字符有40个字节,1个长度有8个字节)

如果我们计算组合,我们可以找到:

  • String ObjectId: 62 ^ 10 = 839299365868340224不同的值;
  • long:是2 ^ 64 = 18446744073709551616不同的值.

因此,我们可以转换这些值而不会丢失信息.有一种简单的方法可以安全地完成它吗?请考虑Chars的任何编码(UTF-8,UTF-16等);

编辑:我只是想以一种艰难的方式来解决它.我问是否有一个简单的方法.

java parse-platform

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

如何使用泛型方法将List <T>转换为Array t [](对于基本类型)?

我正在使用泛型方法进行一些测试,我想在下面转换这两个方法(convertFloatListToArray和convertShortListToArray)(convertListToArray):

public class Helper{
    public static float[] convertFloatListToArray(List<Float> list){
        float[] array = new float[list.size()];

        for(int i = 0; i<list.size(); i++){
            array[i] = list.get(i);
        }

        return array;
    }

    public static short[] convertShortListToArray(List<Short> list){
        short[] array = new short[list.size()];

        for(int i = 0; i<list.size(); i++){
            array[i] = list.get(i);
        }

        return array;
    }
}
Run Code Online (Sandbox Code Playgroud)

但是当我尝试使用泛型时,如下所示,我有一些错误:

public class Helper{
    public static <T, E> T convertListToArray(List<E> list){
        T array = new T[list.size()];

        for(int i = 0; i<list.size(); i++){
            array[i] = list.get(i);
        }

        return array;
    } …
Run Code Online (Sandbox Code Playgroud)

java arrays generics collections generic-method

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

电子邮件模式的说明

我从谷歌和SO获得了不同类型的电子邮件模式.但我无法理解这种模式.请任何人给我一个解释以下模式.预先感谢.

"[a-zA-Z0-9\\+\\.\\_\\%\\-\\+]{1,256}" +
                  "\\@" +
                  "[a-zA-Z0-9][a-zA-Z0-9\\-]{0,64}" +
                  "(" +
                  "\\." +
                  "[a-zA-Z0-9][a-zA-Z0-9\\-]{0,25}" +
                  ")+"
Run Code Online (Sandbox Code Playgroud)

java android

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