当前位置: 首页 > 知识库问答 >
问题:

检查pom.xml是否符合github页面的mvn站点命令

陶瀚玥
2023-03-14

当尝试将我的开源项目发布到gh页面时

mvn site

由于maven和github页面工作方式的变化,最近出现了很多障碍。

学习后

  • https://help.github.com/articles/creating-project-pages-using-the-command-line/
  • https://maven.apache.org/plugins/maven-site-plugin/
  • https://help.github.com/articles/configuring-a-publishing-source-for-github-pages/

以下是我发现的一些必要的先决条件和我遇到的问题:

先决条件

  1. git branch需要显示gh pages分支,例如在使用中的命令后https://gist.github.com/ramnathv/2227408
  2. maven站点插件和maven项目信息报告插件的版本必须正确且配置正确:maven站点插件3.3 java。lang.ClassNotFoundException:组织。阿帕奇。专家多夏。siterenderer。文档内容
  3. 依赖关系。位置。enabled属性需要为false为什么我会遇到Maven错误:“无法确定中是否存在资源Xhttp://maven.glassfish.org/content/groups/glassfish“

问题

  • 如何强制生成GitHub页面
  • Maven:报告插件组织。阿帕奇。专家插件:maven project info reports插件的版本为空
  • 马文:什么是插件管理
  • 多模块POM-创建有效的网站
  • Maven父/子插件配置继承问题

甚至没有提到我必须用于ssh-wago和Java8-javadoc等的变通方法

使用的插件恕我直言是一个“移动目标”。几个月前在我的经验中有效的东西今天不起作用。所以我不断修复我的pom.xml文件以跟上步伐,文件越来越长。

参见例如https://github.com/BITPlan/com.bitplan.simplerest/blob/master/pom.xml

对于我的内部项目,我使用父pom来确保项目具有公共配置。对于开源项目,我还没有找到将父pom用于一组项目的方法。

我想确保我找到的工作配置已“转移”到其他配置。我正在考虑,例如

  1. 可能检查配置的脚本

我假设这是一个非常常见的问题,SO用户在不同的项目中都有处理这个问题的经验。

什么是好的方法,什么工具是有用的?

  1. 带有pom包装的父pom maven中的“pom”包装是什么?主要说明了pom包装在多模块项目中的使用,但它看起来可以用于对父pom进行引用。父母路径默认为...参见Maven:不可解析的父POM。Maven中解释了配置的覆盖:是否可以覆盖已经为父POM中的配置文件定义的插件配置

移动目标示例

  • Java8愚蠢的javadoc设置
    • 当Javadoc标签不完整时,Maven无法在Java8中工作
    • 如何在Maven Javadoc插件中禁用Javadoc警告?

共有1个答案

涂煌
2023-03-14

正如khmarbaise所建议的,现在有了一个共同的父pom。

mvn site

可以使用带有一组通用报告的父pom为所有项目运行,结果将传输到相应的github页面。

项目专用pom现在可以短至25行

我现在实际上正在为pom文件创建一个检查脚本,并为自述文件创建一个生成脚本。md文件。这是一个有用的片段:

使用示例:

checkghpages https://github.com/BITPlan com.bitplan.simplerest

检查gh页面是否存在,并在询问后创建

#
# check the github pages for the given project
# 
# param 1: base url in github
# param 2: project name/directory
#
checkghpages() {
  local l_baseurl="$1"
  local l_project="$2"
  cd $ws/$l_project
  git ls-remote --heads | grep gh-pages > /dev/null
  if [ $? -ne 0 ]
  then
    color_msg $red "github pages branch gh-pages missing for $l_project"
    color_msg $blue "shall i create the branch gh-pages for $l_project?"
    read answer
    case $answer in
      y|Y|yes|Yes|j|Ja) 
        color_msg $blue "creating gh-pages branch for $l_project ..."
        cd /tmp
        # https://gist.github.com/ramnathv/2227408
        git clone $l_baseurl/$l_project
        cd $l_project
        git symbolic-ref HEAD refs/heads/gh-pages
        rm .git/index
        git clean -fdx
        echo "<a href='$l_baseurl/$l_project'>Initial GitHub Page for $l_project</a>" > index.html
        git add .
        git commit -a -m "First pages commit by checkos script"
        git push origin gh-pages
        cd $ws/$l_project
        git pull
      ;;
    esac
  else
    color_msg $green "github pages branch gh-pages for $l_project exists✓"
  fi
}
 类似资料:
  • 问题内容: 我正在尝试为我们的应用程序快速制作一个简单的依赖注入系统,为期2天。我对任何解决方案都比较灵活,但是我想要一些东西,所以我可以说“给我一个符合该协议的实例”,返回的实际类型可以是只要符合所述协议的任何类型。我已经尝试了很多方法,包括泛型,但是设法弄清了它是否真的可以工作,所以现在我只涉及基本知识,例如: 我知道它并不漂亮,但是现在,我对性能/错误代码并不挑剔,只要它能解决解耦问题(最好

  • 问题内容: 假设我有一个包含一些字母和标点符号的String数组 在字母[3]中,我们带有“。” 如何检查字符串是否为标点符号?我们知道有许多可能的标点符号(,。?!等) 到目前为止,我的进度: 问题答案: 您是否还需要检查更多标点符号? 如果是这样,您可以执行此操作。

  • 问题内容: 我想检查某个网站是否存在,这就是我正在做的事情: 如果该页面不存在(错误402或其他任何错误),我可以在该行中做什么以确保正在读取的页面退出? 问题答案: 您可以使用HEAD请求而不是GET。它将仅下载标题,而不下载内容。然后,您可以从标题中检查响应状态。 或者你可以使用 或者你可以使用

  • 问题内容: 任何人都知道是否可以使用PHP检查网站是否在iframe中。 我知道使用javascript是可能的,但是我找不到使用PHP的任何示例? 问题答案: PHP永远不在iframe中。PHP在服务器端执行,并生成HTML,Javascript或文本之类的输出。PHP生成的输出可能会产生或驻留在iframe中,但PHP本身不会。 更多细节 关于您在注释中添加的其他详细信息(您希望在直接向站点

  • 我有一个用lat/long表达的观点 我有一个以米表示的半径值。我需要检查另一个点,也用拉特/long表示,是否在圆内。 如果我在平面上,我可以简单地使用公式 正如这些答案所深刻解释的那样。 然而,根据纬度/经度的用法,我不能使用这个公式,因为行星是球形的。 如何计算从任何给定点到中心的距离以与半径进行比较?

  • null 有什么方法可以在GitHub上使用SharedArrayBuffer吗?我试过上网,但他们对带宽有限制。是否有类似于GitHub的托管静态站点可以允许我们自定义请求头,以便我们可以使用ShareDarrayBuffer?