org.apache.commons.id.serial.AlphanumericGenerator。。。我可以在java应用程序上运行此fine,但在web应用程序服务器上它会毫无警告地失败

org.apache.commons.id.serial.AlphanumericGenerator。。。我可以在java应用程序上运行此fine,但在web应用程序服务器上它会毫无警告地失败,java,jakarta-ee,apache-commons,Java,Jakarta Ee,Apache Commons,这是非常令人沮丧的,我发现这个commons.id包从清单序列化应用程序的起始值创建字母数字序列。我试着在main方法中的一个模拟java应用程序中运行它&它工作得很好,但是当我试着在服务器上运行它时,它失败了,没有任何警告,即使有一个try/catch异常子句,它应该捕获任何东西。我只能认为这是一些奇怪的类路径问题。但我以前也有过这样的情况&通常的解决方法是将lib复制到组件的构建lib中,但这不起作用 有人有我可以使用的代码片段或替代方案吗?我是说,这是一个36进制的进程,必须有替代方案,但

这是非常令人沮丧的,我发现这个commons.id包从清单序列化应用程序的起始值创建字母数字序列。我试着在main方法中的一个模拟java应用程序中运行它&它工作得很好,但是当我试着在服务器上运行它时,它失败了,没有任何警告,即使有一个try/catch异常子句,它应该捕获任何东西。我只能认为这是一些奇怪的类路径问题。但我以前也有过这样的情况&通常的解决方法是将lib复制到组件的构建lib中,但这不起作用

有人有我可以使用的代码片段或替代方案吗?我是说,这是一个36进制的进程,必须有替代方案,但这个API是我在网上找到的唯一一个API,在我过去几天有时间时,我断断续续地搜索

任何提示都将不胜感激

public static String[] generateAlphanumericSequence(String start, int n){
    AlphanumericGenerator serial = null;;
    try {
        serial = new AlphanumericGenerator(true, start.toLowerCase().trim());
    } catch (Exception e) {
    e.printStackTrace();
    }
    String[] seq = new String[n];
    if (serial!=null) {
        for (int i = 0; i < n; i++) {
            try {
                seq[i] = serial.nextStringIdentifier();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
    return seq;
}
publicstaticstring[]generateAlphanumericSequence(stringstart,int-n){
AlphanumericGenerator串行=空;;
试一试{
serial=新的AlphanumericGenerator(true,start.toLowerCase().trim());
}捕获(例外e){
e、 printStackTrace();
}
字符串[]seq=新字符串[n];
如果(串行!=null){
对于(int i=0;i
使用日志记录,而不是转到sysout查看发生了什么。try/catch Exception不会捕获所有内容。你可能想抓住抛弃的。由于缺少依赖项,您可能遇到了NoClassDefFoundError。您能澄清一下什么时候说将库从复制到生成中吗?此外,工具agentranack可能会帮助您确定该类是否位于您认为的位置。它显然不在那个位置。