Java项目发布到Maven中央仓库操作步骤及相关注意事项

如何发布jar包到maven中央仓库(2024年3月最新版保姆级教程) 在官方的中提到:从 2024 年 3 月 12 日起,所有注册都将通过中央门户网站进行。有关传统注册的信息,请参阅相关文档。有关在门户网站早期访问期间通过传统的 OSSRH 发布方式进行发布的支持,请参阅以下部分。所以之后,博主原来写的教程就不适用了,所以这次博主根据他的官方文档出了一篇新教程,踩了很多的坑,最后三天终于把他弄出来了,这里我会把我遇到的坑给大家整理一下,避免大家踩坑。如果你没看过原来的那篇文章没问题的,现在我们开始从0开始,到最后jar包成功发布在maven中央仓库上。 阅读详情

1 注册maven(oss)账号

注册地址: https://issues.sonatype.org/secure/Signup!default.jspa

注册成功后登陆到首页

2 创建一个Issue

Project: 项目类型,一般为Community Support。
Issue Type: 问题类型, 新的项目为New Project。
Summary:项目名称,如HASentinel。
Description:项目描述,介绍一下当前项目。
Group Id:对应pom.xml里的group id。如果你有个人或企业的域名,可以为公司的域名,审核时候需要验证当前域名为本人所有,如com.eeeffff.hasentinel,其中com.eeeffff须为域名eeeffff.com的拥有者,如果没有可以写github对应的个人地址(如:com.github.potenstop)
Project URL: 项目的地址,如 https://github.com/fenglibin/HASentinel 。
SCM url:项目对应的下载地址,如 https://github.com/fenglibin/HASentinel .git。

其他保持默认。填写完成后就可以create了。

3 域名拥有者验证

项目创建成功后,会有一个项目编辑,如下所示:

然后根据其要求,到域名提供商那里做一条TXT解析,这是最快的一种认证方式:

域名服务商增加该域名eeeffff.com的TXT解析:

记录值即为为该项目对应的项目代码值。

4 pgp生产秘钥key

我的电脑是Linux Ubuntu18,Ubuntu本身包含了gpg这个命令,因而不需要额外的下载,如果是其它系统,可能需要下载相应的软件或命令。

生成加密key,使用命令“gpg --gen-key”:

查看生成的加密Key,使用命令“gpg --list-keys”:

将加密Key推送加远程加密服务器,此处我推到Ubuntu的加密服务器:

推送如果不报错,则说明推成功,如果推失败则多尝试几次,或者换一个远程加密服务器,加密服务器之间会相互同步数据。

查看推送的加密Key:

这步一定要验证一下,以确保推送真的成功了,如果获取失败则多尝试几次,我这边第一次操作就显示失败了。

GPG的操作,可以看一下这篇文章:

https://www.ruanyifeng.com/blog/2013/07/gpg.html

5 配置settings.xml

在maven对应的config目录下的settings.xml中的services节点下增加一个service节点,配置你当前sonatype的用户名和密码,用于后续jar包远程推送到maven做权限验证,这里的id要和pom.xml中distributionManagement配置的id要一一对应,如我配置的为

<server>
    <id>ossrh</id>
    <username>maven_username</username>
    <password>maven_password</password>
</server>

6 配置pom.xml

发布到maven仓库的项目,要求配置如下内容:

name: 项目名称。
description: 项目描述。
url: 项目地址
licenses: 开源协议。
developers: 开发者列表。
scm: 项目的git地址相关。
profiles: 配置不同的环境。比如开发环境 测试环境 发布环境。
groupId: 定义当前maven项目隶属的实际项目。
artifactId: 该元素定义实际项目中的一个Maven项目(模块).
version: 版本号, 带SNAPSHOT为快照版本,否则为 release 版本。
build: 插件。需要加上maven-source-plugin、maven-javadoc-plugin、maven-gpg-plugin三个插件
dependencies: 依赖的模块。

pom.xml 配置参考如下截图及配置代码所示:

        <!-- 配置必须的插件 -->
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>${maven.compiler.source}</source>
                    <target>${maven.compiler.target}</target>
                </configuration>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-deploy-plugin</artifactId>
                <version>${maven.deploy.version}</version>
                <configuration>
                    <skip>true</skip>
                </configuration>
            </plugin>
            <plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-source-plugin</artifactId>
				<version>3.2.1</version>
				<executions>
					<execution>
						<id>attach-sources</id>
						<goals>
							<goal>jar-no-fork</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<version>3.3.0</version>
				<executions>
					<execution>
						<id>attach-javadocs</id>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-gpg-plugin</artifactId>
				<version>3.0.1</version>
				<executions>
					<execution>
						<id>sign-artifacts</id>
						<phase>verify</phase>
						<goals>
							<goal>sign</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
        </plugins>
        <!-- 配置项目发布的maven仓库路径 -->
        <distributionManagement>
        <repository>
            <id>ossrh</id>
            <name>Release</name>
            <url>https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/</url>
        </repository>

        <snapshotRepository>
            <id>ossrh</id>
            <name>SNAPSHOTS</name>
            <url>https://s01.oss.sonatype.org/content/repositories/snapshots</url>
        </snapshotRepository>
    </distributionManagement>

7 发布版本

都配置成功后,此时转到项目的根目录下,执行如下maven打包及发布命令:

mvn clean source:jar install deploy -Dmaven.test.skip

如果没有报错,则输出如下截图所示:

 此时可以在创建项目的sonatype页面给负责和你对接的人留言,让他执行下一步操作,他会告诉你下一步该做什么:

8 在oss查看快照

发布快照版本,只需要在版本号后面加上SNAPSHOT字符串,重新打包即可,Maven会自动判断当前发布为快照版本,快照版本可以无限次发布,不需要在仓库中删除后再发布。

查看地址: https://s01.oss.sonatype.org
可以根据GroupID搜索对应工程的快照的信息,查看快照是不需要登陆的,如下图所示。

9 发布和查看release版本

发布release版本只需要去掉版本号后面的的SNAPSHOT,重新执行deploy即可,但是请记住,此时deploy成功并不是真的发到了线上的Maven仓库,此时相当于发到了一个预发布仓库,此时需要用户去执行项目检查,包括javadoc生成是否符合规范、pom文件是否包含了scm地址等信息、是否通过gpg生成了校验asc文件等等,如果通不过会有相应的提示,完成这些修改后才能后关闭当前issue,执行真正的发布动作。

查看release版本需要登录才可以看到, 用户名和密码和注册maven一致。

执行项目检查的步骤:1)选中一个项目;2)执行上面的Close操作,然后项目会执行规范及安全检查,如果通过则release按钮会变得可用,如果检验没有通过,则会有相应的提示信息,需要根据提示修改,在执行下一次执行deploy之前,先通过Drop功能删除掉当前项目。

校验不通过大致信息如下所示:

此处展示了三种类型的错误:

  • 签名校验错误;
  • pom文件校验错误;
  • Javadoc校验错误。

10 正式同步到Maven中央库

如果是第一次发布,需要在release成功后再之前的issue添加评论,告知该项目预计release成功。如下图

待管理人员正式执行同步,等待一段时间,就可以在maven的正式仓库中执行到该项目了。

Maven仓库(https://search.maven.org/)中搜索项目:

Spring Boot的基础使用和< artifactId>spring-boot-maven-plugin</ artifactId>爆红的处理 独立的运行Spring项目:Spring Boot 可以jar包形式独立运行,运行一个Spring Boot项目只需要通过java -jar xx.jar来运行内嵌servlet容器:Spring Boot 可以选择内嵌Tomcat、jetty或者Undertow,这样我们无须以war包形式部署项目。提供starter简化Maven配置:spring提供了一系列的start pom来简化Maven的依赖加载,列如,当你使用了spring-boot-starter-web,会自动加入依赖包。 阅读详情

相关推荐

Maven概述

Maven使用

m0_58028430的博客 1464

Maven:Maven GPG Plugin。

在使用Maven GPG Plugin之前,首先需要确认命令行下的gpg是可用的,然后如下所示配置POM。 &lt;project&gt; ... &lt;build&gt; &lt;plugins&gt; &lt;plugin&gt; &lt;groupId&gt;org.apache.maven.plugins...

孤芳不自赏 2万+

解决Maven无法下载modbus4j依赖的三种实用方案

在Java项目开发中,依赖管理是构建流程的核心环节,Maven作为主流构建工具,通过中央仓库机制自动解析和下载依赖。然而,当遇到某些特定库如工业通信库modbus4j未发布至中央仓库时,开发者会面临依赖解析失败的问题。其原理在于Maven的依赖解析机制严格依赖于仓库元数据,若坐标对应的构件不存在于配置的仓库中,构建过程便会中断。从技术价值看,灵活处理此类问题能提升项目对特殊依赖的兼容性,保障工业物联网、数据采集等场景下老旧或小众库的集成。本文以modbus4j为例,针对其未上传至Maven中央仓库的典型情况

weixin_30730053的博客 285

发布java工具包到 maven 中央仓库,不踩坑

要想将自己的java工具提交到maven中央仓库并公开,但是maven中央仓库是不允许我们直接上传jar包到它上面的,因此我们只能将jar包发布到它指定的第三方maven仓库,然后这个仓库再将jar包同步到中央仓库。接下来,我们需要使用gpg生成秘钥,在后续包发布jar时会根据生成的秘钥进行校验,因为sonatype也需要对上传这一行为进行权健的校验,避免无意义或恶意上传文件的行为。如果是io.github.mose-x 这种git域名的,则需要新建创建完整的公开的git仓库,如下两个图(网上找的)

mose-x 4万+

如何评估一颗 AI 芯片的真实性能?TOPS、FPS 与 Token/sec 全解析

AI 芯片在实际部署中,其理论峰值性能往往无法反映真实执行效率。如何科学评估一颗 AI 芯片的“真实性能”,已成为芯片选型与系统集成环节中的关键技术问题。本文从工程实战角度出发,深入拆解当前常用性能评估指标(TOPS、FPS、Token/sec)背后的定义逻辑与使用陷阱,并结合推理模型部署与执行路径,系统讲解 AI 芯片在不同场景下的性能验证方法。通过对芯片算力-功耗-调度三维关系的分析,读者将掌握评估一颗 AI 芯片是否“跑得动业务”的核心判断能力。

努力分享一些人工智能、计算机视觉、影像等相关的知识干货! 3385

论文阅读--射频电源在半导体领域的应用

射频电源(RF Power Supply)是能够输出300kHz~300GHz正弦波电压的高频交流电源,在半导体制造领域,射频电源的典型工作频率范围为400kHz∼60 MHz,主要由射频发生器(功率源)、匹配器及配套控制电路组件构成,其关键组件包括变压器与电抗器、晶闸管、绝缘栅双极型晶体管(IGBT)、钣金件、铜材及各种电子元器件。射频电源是刻蚀和薄膜沉积工艺的核心,主要用于产生等离子体,以增强气体反应活性,其性能直接影响反应腔体内等离子体的浓度、均匀性和稳定性。

伊丽莎白的学习之路 2337

maven deploy指定版本号

maven deploy指定版本号 命令也能解决: mvn versions:set -DnewVersion=1.0.3-SNAPSHOT

zyinn的博客 1万+

SAP LSMW数据批导操作手册及跨客户端传输方法(涉及默认值配置,及多余字段如何删除)

SAP LSMW数据批导操作手册及跨客户端传输方法

我好像病了的博客 6084

如何发布jar包到新版maven中央仓库(2025年1月最新保姆级教程)

第一次发布时,上边所有步骤都要做。以后再发布时,只操作第3步即可!

不曾留得桃花影 1762

Python读取Matlab v7.3数据

文章目录Matlab保存数据Python读取 v7.3 Mat Matlab保存数据 在matlab设置中,常规->MAT文件,选择MATLAB版本7.3或更高版本保存数据。 注意保存数据的文件名为 corre.mat,保存的数据数组为data; 后面python的读取中会用到这两个参数 Python读取 v7.3 Mat 先安装hdf5storage库,再使用以下代码,就可以读取到mat中的数据,注意 import hdf5storage import numpy as np dataDi

weixin_43121914的博客 1081

【科普知识】什么是驱控一体化伺服电机?

驱控一体化伺服电机以其高度的集成性、兼容性、便捷性以及卓越的性能表现,成为了现代工业自动化领域的一颗璀璨明珠。对于那些追求高效、精准、智能控制的行业用户而言,它无疑是一种理想的选择。

m0_46512607的博客 3151

Android Studio发布项目到Maven仓库

为了方便别人使用我们开发的Android Library,一般我们都会把Android Library打成aar包,并将aar包发布到Maven仓库当中。如果是开源项目就可以把包发布到Maven Central仓库或者JCenter仓库中;如果是公司内部使用,一般公司内部会自己搭建私有Maven仓库,就把包发布到私有Maven仓库当中,以方便别人直接使用。这篇文章就这两类仓库的发布方法做一个介绍。准

Lorien Zhang的博客 7337

深入解析:武汉光庭信息技术 Android CarPlay 开发岗位的技术要求与面试准备(大连)

武汉光庭信息大连分部招聘Android CarPlay开发工程师,要求专科以上学历及2年以上Android开发经验,需精通CarPlay集成技术与车载系统开发。该职位涉及Android底层框架修改、CarPlay协议实现及车规级系统开发,需处理USB/HID驱动、图形合成等技术难点,并确保通过Apple严格认证。求职者需具备扎实的Android开发能力,熟悉车载环境特殊性,包括系统稳定性保障、人机交互适配等技术要点。文章深度解析了职位技术内涵,并提供面试问题与参考答案,帮助求职者全面准备这一复合型技术岗位。

郑伟强dev的专栏 400

maven 中央库发布

1. 注册 sonatype 账号,地址:https://issues.sonatype.org/ 2. 登录sonatype 创建项目,选择正确的类型 3. groupId介绍: groupId 可以用github或者gitee, 格式:com.gitee.cn_yaojin 或者io.github.yushan-yaojin ,其中 cn_yaojin或者 yushan-yaojin 是账号名。 4. 激活相关验证,以gitee为例(github一样),官方会回复一个话,大致如...

cn_yaojin 864

工业缺陷检测:基于深度学习的表面缺陷分类

工业缺陷检测:基于深度学习的表面缺陷分类 ,人工智能,计算机视觉,大模型,AI,在现代工业生产中,产品质量直接影响企业的竞争力和声誉,工业缺陷检测作为质量把控的重要环节,其技术的发展至关重要。传统的人工检测方式效率低、成本高且易受主观因素影响,难以满足大规模、高精度的生产需求。随着深度学习技术的蓬勃发展,基于深度学习的工业表面缺陷分类方法凭借强大的特征提取和模式识别能力,成为解决工业缺陷检测难题的有效途径。本文将深入探讨基于深度学习的工业表面缺陷分类技术,结合详细的代码示例和概念解析。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 3万+

YOLO11全网首发:CVPR2026 MixerCSeg | DEGConv方向引导边缘门控,破解细长裂缝检测难题

DEGConv通过方向先验嵌入、边缘增强卷积和动态门控三大机制,针对性解决了YOLO在处理裂缝类细长、多方向、低对比度目标时的特征提取不足问题,显著提升了裂缝检测的精度与鲁棒性。

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 560

常用jar包_发布Maven包的正确姿势

本文介绍如何把自己写的Maven包发布到公开仓库/中央仓库/私有仓库。当我们使用commons-logging这些第三方开源库的时候,我们实际上是通过Maven自动下载它的jar包,并根据其pom.xml解析依赖,自动把相关依赖包都下载后加入到classpath。那么问题来了:当我们自己写了一个牛逼的开源库时,非常希望别人也能使用,总不能直接放个jar包的链接让别人下载吧?如果我们把自己的开源库放...

weixin_39678163的博客 249

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

将项目发布到Maven中央仓库的不完整纪要

背景 有几个Utils性质的Jar需要跨项目引用,原本想部署私有Maven仓库,后来感觉太麻烦,索性直接发布到中央库,引用时也方便。 发布成功之后,觉得某些细节还是有必要记录一下。 资源 Sonatype:目前运营Maven中央仓库的官方网站,项目发布地址:https://issues.sonatype.org Sonatype Nexus:由Sonatype发布的一套可进行Mave...

weixin_30784945的博客 79

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

android studio复制本地plugin jar包_Maven 中央仓库提交Jar包全程指南

201128-Maven 中央仓库提交Jar包全程指南本文记录一下将jar上传到maven中央仓库的全过程,文中项目依托在github上,使用的是mac环境 (关于maven、jdk的环境配置不属于本文内容)1. sonatype账号申请首先我们需要申请一个账号,地址为:https://issues.sonatype.org/secure/Signup!default.jspa请记住这个...

weixin_32126843的博客 446

如何将自己的jar包上传到Maven中央仓库

官方教程地址:https://central.sonatype.org/pages/ossrh-guide.html 如果有能力,不要再看博客浪费自己的时间了。包括我的,尽可能观看官方文档。

BoomMan 2437

深入解析 Maven 的部署命令

它将本地仓库的工件(如库文件)推送到远程仓库,确保所有依赖库的统一管理。如引用[4]所述:“Maven 的主要功能包括:依赖管理:自动下载项目所需的依赖库和插件。是 Maven 生命周期管理的关键部分,它负责将项目构建生成的包(如 JAR 或 WAR 文件)发布到远程仓库,以便其他项目或团队成员共享和使用。命令是 Maven 项目部署的核心工具,通过自动化发布包到远程仓库,大幅提升团队协作效率。是 Maven 的一个核心命令,用于将本地构建的项目包(例如,通过。文件中配置远程仓库。

weixin_49519034的博客 1662

【Java】 如何在 Maven 项目中添加本地 JAR 文件?

Maven 是一个强大的 Java 项目管理工具,它可以帮助开发者管理项目的构建、依赖和分发。在开发过程中,我们可能会遇到需要将本地的 JAR 文件添加到 Maven 项目中的情况。中添加依赖,你可以轻松地将本地 JAR 文件集成到你的项目中。此外,将 JAR 安装到本地仓库可以简化依赖管理,并确保项目的可移植性。希望这篇技术文章能帮助你更好地理解如何在 Maven 项目中使用本地 JAR 文件。在 Maven 项目中添加本地 JAR 文件是一个相对简单的过程,但需要正确配置。如果没有,可以通过运行。

baidu_23445983的博客 957

Java项目如何打jar包?

项目打jar包 运行

XF的博客 2111

【Maven】《十分钟搞清Maevn项目》

Maven是Apache旗下的开源项目管理工具,基于POM模型实现项目构建。它具有三大核心功能:依赖管理(自动处理jar包版本)、统一项目结构(标准化目录布局)和项目构建(自动化清理、编译、测试等流程)。Maven通过坐标(groupId、artifactId、version)唯一标识资源,支持依赖传递和范围控制(compile/test/provided/runtime)。其生命周期包含clean(清理)、default(核心构建)和site(文档生成)三套独立流程,各阶段任务由插件执行。在IDEA中配置

pbrush的博客 832

Maven与Springboot创建

比如当maven从中央仓库拉取依赖的时候,发现多次出现拉去失败,或者拉取缓慢,那么此时呢,就可以找到这个setttings文件,修改下镜像仓库地址,比如使用阿里云的仓库,加快下载。那么引入jar的包过程,其实呢是比较麻烦的,特别是以后进行项目开发的时候,一个个的引入jar包,那是基本不太可能的,所以,为了解决这些“障碍”,项目管理工具就应运而生了。但是呢,手动去一个个寻找,一个个写排除依赖语句,我们会发现这是比较慢的,也费点精力,所以此时呢,可以借助一个插件。

m0_75169015的博客 1736

Maven基础 学习笔记

1.设置 Maven 环境变量 添加环境变量 MAVEN_HOME:E:\Maven\apache-maven-3.3.9 编辑系统变量Path,添加变量值:;%MAVEN_HOME%\bin 2.Maven POM(Project Object Model,项目对象模型)

Baymax_wyl的博客 609
上一篇: 我当宝贝的eeefff.com域名,被我误会了5年
下一篇: Docker下安装RocketMQ服务及控制台的Shell脚本
冯立彬
冯立彬 优质创作者: 编程框架技术领域 优质创作者: 编程框架技术领域
博客等级 码龄21年 5458粉丝 593原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值