草庐IT

java - 如何在运行时从文件夹或 JAR 加载类?

我正在尝试制作一个Java工具来扫描Java应用程序的结构并提供一些有意义的信息。为此,我需要能够从项目位置(JAR/WAR或只是一个文件夹)扫描所有.class文件,并使用反射来了解它们的方法。事实证明这几乎是不可能的。我可以找到很多基于URLClassloader的解决方案,这些解决方案允许我从目录/存档加载特定类,但没有一个解决方案允许我在没有任何关于类名或包结构的信息的情况下加载类。编辑:我觉得我表达得很糟糕。我的问题不是我无法获得所有的类文件,我可以通过递归等来做到这一点并正确定位它们。我的问题是为每个类文件获取一个类对象。 最佳答案

java - 无法使用 maven-assembly-plugin 设置最终的 jar 名称

这就是我配置maven-assembly-plugin的方式org.apache.maven.pluginsmaven-assembly-plugin2.4myappcom.myapp.Mainjar-with-dependencies-->我希望最终的jar文件应该是myapp.jar但它以myapp-jar-with-dependencies.jar结尾您能告诉我如何配置以将"jar-with-dependencies"从最终名称中排除吗? 最佳答案 您可以指定finalName属性为jar赋予所需的名称,并指定appendAs

java - 无法使用 maven-assembly-plugin 设置最终的 jar 名称

这就是我配置maven-assembly-plugin的方式org.apache.maven.pluginsmaven-assembly-plugin2.4myappcom.myapp.Mainjar-with-dependencies-->我希望最终的jar文件应该是myapp.jar但它以myapp-jar-with-dependencies.jar结尾您能告诉我如何配置以将"jar-with-dependencies"从最终名称中排除吗? 最佳答案 您可以指定finalName属性为jar赋予所需的名称,并指定appendAs

java - 在 JAR 中加载属性文件?

当我的Web应用程序所依赖的jar之一尝试从jar中加载属性文件时,我遇到了问题。这是jar中的代码。static{Propertiesprops=newProperties();try{props.load(ClassLoader.getSystemResourceAsStream("someProps.properties"));}catch(IOExceptione){e.printStackTrace();}someProperty=props.getProperty("someKey");}属性文件位于Maven项目的“src/main/resources”目录中。当我在Ec

java - 在 JAR 中加载属性文件?

当我的Web应用程序所依赖的jar之一尝试从jar中加载属性文件时,我遇到了问题。这是jar中的代码。static{Propertiesprops=newProperties();try{props.load(ClassLoader.getSystemResourceAsStream("someProps.properties"));}catch(IOExceptione){e.printStackTrace();}someProperty=props.getProperty("someKey");}属性文件位于Maven项目的“src/main/resources”目录中。当我在Ec

java - Maven中的依赖jar文件列表

使用Maven2,有没有一种方法可以列出jar依赖项作为文件名?mvndependency:build-classpath可以列出jar文件,但这将包括它们在我的本地存储库中的位置的完整路径。我需要的基本上只是一个文件名列表(或复制依赖目标复制的文件名)。所以我需要的列表是这样的activation-1.1.jar,antlr-2.7.6.jar,aopalliance-1.0.jaretc...理想情况下,作为一个maven属性,但我想,可以生成诸如build-classpath之类的文件。我想要实现的是将Bundle-ClassPath写入OSGibundle的其他手动维护的MAN

java - Maven中的依赖jar文件列表

使用Maven2,有没有一种方法可以列出jar依赖项作为文件名?mvndependency:build-classpath可以列出jar文件,但这将包括它们在我的本地存储库中的位置的完整路径。我需要的基本上只是一个文件名列表(或复制依赖目标复制的文件名)。所以我需要的列表是这样的activation-1.1.jar,antlr-2.7.6.jar,aopalliance-1.0.jaretc...理想情况下,作为一个maven属性,但我想,可以生成诸如build-classpath之类的文件。我想要实现的是将Bundle-ClassPath写入OSGibundle的其他手动维护的MAN

java - 组合多个 jar 的清洁方法?最好使用 Ant

我对一些外部jar有运行时依赖项,我想将它们“重新压缩”到单个jar中。这些外部依赖项存储在external_jars目录中,我希望不必将它们全部列出(即,如果我的依赖项发生更改,则不需要更改我的构建脚本)。有什么想法吗?Google给了我一个关于如何做到这一点的好答案-如果您不介意将每个jar列为依赖项:http://markmail.org/message/zijbwm46maxzzoo5粗略地说,我想要一些类似于以下内容的东西,它将lib目录中的所有jar合并到out.jar中(带有一些理智的覆盖规则)。jar-combine-outout.jar-inlib/*.jar

java - 组合多个 jar 的清洁方法?最好使用 Ant

我对一些外部jar有运行时依赖项,我想将它们“重新压缩”到单个jar中。这些外部依赖项存储在external_jars目录中,我希望不必将它们全部列出(即,如果我的依赖项发生更改,则不需要更改我的构建脚本)。有什么想法吗?Google给了我一个关于如何做到这一点的好答案-如果您不介意将每个jar列为依赖项:http://markmail.org/message/zijbwm46maxzzoo5粗略地说,我想要一些类似于以下内容的东西,它将lib目录中的所有jar合并到out.jar中(带有一些理智的覆盖规则)。jar-combine-outout.jar-inlib/*.jar

java - 我可以从 lib 中的 JAR 中提供 JSP,还是有解决方法?

我在Tomcat7中以WAR文件的形式部署了一个Web应用程序。该应用程序被构建为一个多模块项目:核心-打包为JAR,包含大部分后端代码core-api-打包为JAR,包含核心接口(interface)webapp-打包为WAR,包含前端代码并依赖于核心customer-extensions-可选模块,打包为JAR通常,我们可以将我们的JSP文件放在webapp项目中,并相对于上下文引用它们:/WEB-INF/jsp/someMagicalPage.jsp问题是我们如何处理特定于客户扩展项目的JSP文件,这些文件不应始终包含在WAR中。不幸的是,我无法引用JAR文件中的JSP,它似乎出