天道酬勤,学无止境

maven

Can't build maven jhipster project with lombok

问题 ./mvnw 和 mvn clean install 在添加 lombok 依赖项时失败,但从 Intellij IDE 启动时成功运行 查找以下错误: INFO] ------------------------------------------------------------- [ERROR] COMPILATION ERROR : [INFO] ------------------------------------------------------------- [ERROR] src/main/java/web/rest/core/service/impl/ProductServiceImpl.java:[18,29] cannot find symbol symbol: method builder() location: class com.test.one.web.rest.core.model.Product 这是 POJO import lombok.Builder; import lombok.Data; @Data @Builder public class Product { private String name; } 回答1 Jhipster 生成的 maven 项目在 maven 编译插件中使用了

2022-05-17 04:50:43    分类:技术分享    maven   jhipster   lombok

Jenkins : Add custom jar in maven project

问题 我正在尝试添加 Maven 存储库中不可用的自定义 jar。 当我在本地执行时,我指向 Jar 路径,所以没有问题。 但是当我使用 Jenkins 执行时,我面临的问题是无法解决项目的依赖关系。 它还列出了我添加自定义的两个缺少的 Jar 文件。 因此,请帮助我如何添加使用 Jenkins 执行的自定义 Jar。 我也在使用 Nexus 进行二进制存储。 Jenkins 成功执行后,镜像文件将发布到带有版本控制的 nexus 目录。 回答1 你有2个选择 1)如果您可以访问 Jenkins 使用的本地 Nexus/Artifactory 存储库,则可以将 jar 添加到该存储库,它将正常下载。 2)您可以有一个本地存储库,您可以在其中将 jar 签入项目下的 SCM。 然后,您将在 pom.xml 中像这样访问它。 请参阅 http://doduck.com/adding-local-jar-in-maven-local-repository/ <repositories> <repository> <id>localrepository</id> <url>file://${basedir}/repo</url> </repository> </repositories>

2022-05-17 04:38:08    分类:技术分享    java   maven   jenkins   jar   nexus

Can maven repository be added from maven extension in Maven 3.5

问题 这是代码吗 project.getPluginRepositories().add(myCustomRepository); 在 Maven 扩展(扩展AbstractMavenLifecycleParticipant的类)的afterProjectsRead方法中执行应该可以工作吗? 它执行得很好(没有错误也没有警告),但是 Maven 似乎没有考虑到 repo,并且构建失败并显示“插件 .... 或者它的依赖项之一无法解决”! 如果这是不可能的,还有其他方法可以从 Maven 扩展动态添加回购吗? 回答1 另一种方法是作为EventSpy进行侦听,然后在我们可以定义自定义存储库的范围内注入项目级别的设置。 例如, 在${basedir}/.mvn/extensions.xml <extensions xmlns="http://maven.apache.org/EXTENSIONS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/EXTENSIONS/1.0.0 http://maven.apache.org/xsd/core-extensions-1.0.0.xsd"> <extension> <groupId

2022-05-17 02:31:16    分类:技术分享    maven   maven-3   maven-extension

How to add local project (not jar) as a dependency to a Maven project

问题 我有两个 Maven 项目作为两个模块添加到一个 Intellij Idea 的项目中。 项目 B 依赖于项目 A。 这是他们的 pom.xml 文件的简化版本。 项目一: <?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.group</groupId> <artifactId>a</artifactId> <version>1.0-SNAPSHOT</version> <packaging>jar</packaging> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId

2022-05-17 00:39:21    分类:技术分享    java   maven   intellij-idea

how to resolve Permission denied (publickey) when maven release used

问题 我有这个错误信息: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.5.2:prepare (default-cli) on project portail: Unable to commit files [ERROR] Provider message: [ERROR] The git-push command failed. [ERROR] Command output: [ERROR] Permission denied (publickey). [ERROR] fatal: Could not read from remote repository. 我不明白。 我使用这个命令 maven : mvn release:prepare release:perform -DgenerateBackupPoms=false -Dtag=xxx-2.1-RC03 -DreleaseVersion=2.1-RC03 -DdevelopmentVersion=2.2-SNAPSHOT 我有一半的结果,因为我可以看到第一次推送[maven-release-plugins] prepare release xxx-2.1.0-RC03但我在我的关系上看不到工件 2.1.0

2022-05-16 17:30:17    分类:技术分享    git   maven   maven-plugin   release   maven-release-plugin

Maven mojo plugin to load class from hosting project

问题 我有一个加载类的自定义插件,例如 Class<?> clazz = Class.forName(NAME_OF_CLASS_FROM_HOST_DEPENDENCIES); NAME_OF_CLASS_FROM_HOST_DEPENDENCIES - 是存在于项目依赖项中的类,使用此插件。 在托管项目 pom 中,我这样调用插件: <plugin> <groupId>com.plugins</groupId> <artifactId>the_plugin</artifactId> <version>1.0-SNAPSHOT</version> <executions> <execution> <id>do</id> <phase>process-classes</phase> <goals> <goal>do</goal> </goals> </execution> </executions> </plugin> 获取 ClassNotFoundException 重要的是,在 pom 中定义的那些依赖项为 <scope>provided</scope> 回答1 List<URL> listUrl = new ArrayList<URL>(); Set<Artifact> deps = project.getDependencyArtifacts(); for

2022-05-16 16:09:10    分类:技术分享    java   maven   maven-plugin

maven release plugin - manipulating project release version

问题 我正在尝试在 Jenkins 中配置一个带有自定义发布版本的 Maven 发布版本,其中包括发布版本的分支。 它看起来像这样: 发布:准备 -DreleaseVersion=${project.version}-${GIT_LOCAL_BRANCH}-发布发布:执行 一切正常,除了基于 pom 计算的“project.version”占位符包含“-SNAPSHOT”后缀。 没有'-SNAPSHOT'我可以使用其他占位符来获取它吗? 我知道默认情况下,maven 发布插件会设置正确的版本——只有我想操纵那个值。 回答1 请参阅官方文档 https://maven.apache.org/maven-ci-friendly.html。 从 3.5 开始,maven 支持 3 个属性: ${revision} 、 ${sha1}和${changelist} 。 所以你可以使用类似的东西 <version>${revision}${changelist}</version> ... <properties> <revision>1.3.1</revision> <changelist>-SNAPSHOT</changelist> </properties> 并调用它 release:prepare -DreleaseVersion=${revision}-${GIT_LOCAL

2022-05-16 14:07:05    分类:技术分享    java   maven   jenkins   pom.xml   maven-release-plugin

Access Jenkins Environment Variables in Java Program

问题 有没有办法在 java 程序中访问 jenkins 环境变量(BUILD_NUMBER 等)而不对 jenkins 工作进行任何更改。 我在想是否有任何监听器(Jenkins 或 Maven)可以用来获取 jenkins 环境变量,然后我可以将它们设置为系统属性并访问我的 java 程序中的任何位置。 我遇到了EnvInject插件,但这需要换工作。 我正在寻找一种可以以编程方式访问的解决方案! 参考:https://wiki.jenkins-ci.org/display/JENKINS/Building+a+software+project#Buildingasoftwareproject-JenkinsSetEnvironmentVariables 回答1 从该文档中可以清楚地看出,您可以以这种方式将这些值作为 VM 选项传递: clean install -DBUILD_NUMBER=${BUILD_NUMBER} -DBUILD_ID=${BUILD_ID} ... etc. (并通过System.getProperty(...)在您的 java 程序中访问它们)。 回答2 在 Jenkins 中,如果您想设置一个环境变量并在您的 java 代码中访问它,您可以使用以下步骤: 在管理 Jenkins 页面的配置系统菜单中的 Jenkins 中创建环境变量。 例如

2022-05-16 14:03:04    分类:技术分享    java   maven   jenkins   jenkins-plugins

swagger maven plugin documentation is not generated

问题 我正在尝试使用 Swagger maven 插件生成 swagger 文档 但是什么都没有创建,这是我输入的详细插件: <plugin> <groupId>io.swagger</groupId> <artifactId>swagger-codegen-maven-plugin</artifactId> <version>2.2.2-SNAPSHOT</version> <executions> <execution> <goals> <goal>generate</goal> </goals> <configuration> <inputSpec>/data/AMEE/ame/api.yaml</inputSpec> <language>java</language> <configOptions> <sourceFolder>/data/AMEE/ame/gen</sourceFolder> </configOptions> </configuration> </execution> </executions> </plugin> 它没有创建任何文档。 然后我尝试了kongchen swagger maven插件 插入: <plugin> <groupId>com.github.kongchen</groupId> <artifactId>swagger-maven

2022-05-16 13:43:26    分类:技术分享    java   maven   swagger   swagger-maven-plugin

Failed to start component [StandardEngine[Tomcat].StandardHost[localhost].TomcatEmbeddedContext[]]

问题 我正在尝试构建一个 SpringBoot 应用程序。 import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.ApplicationContext; @SpringBootApplication public class App { @SuppressWarnings("unused") public static void main(String[] args) throws Exception { ApplicationContext ctx = SpringApplication.run(App.class, args); } } 但是,当我尝试运行该应用程序时,它会抛出以下错误: 2017-03-27 13:55:58.281 INFO 8608 --- [ main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 8080 (http) 2017-03-27 13:55:58.299 INFO 8608 ---

2022-05-16 13:40:24    分类:技术分享    java   spring   maven   tomcat   catalina