- 浏览: 7948933 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (2425)
- 软件工程 (75)
- JAVA相关 (662)
- ajax/web相关 (351)
- 数据库相关/oracle (218)
- PHP (147)
- UNIX/LINUX/FREEBSD/solaris (118)
- 音乐探讨 (1)
- 闲话 (11)
- 网络安全等 (21)
- .NET (153)
- ROR和GOG (10)
- [网站分类]4.其他技术区 (181)
- 算法等 (7)
- [随笔分类]SOA (8)
- 收藏区 (71)
- 金融证券 (4)
- [网站分类]5.企业信息化 (3)
- c&c++学习 (1)
- 读书区 (11)
- 其它 (10)
- 收藏夹 (1)
- 设计模式 (1)
- FLEX (14)
- Android (98)
- 软件工程心理学系列 (4)
- HTML5 (6)
- C/C++ (0)
- 数据结构 (0)
- 书评 (3)
- python (17)
- NOSQL (10)
- MYSQL (85)
- java之各类测试 (18)
- nodejs (1)
- JAVA (1)
- neo4j (3)
- VUE (4)
- docker相关 (1)
最新评论
-
xiaobadi:
jacky~~~~~~~~~
推荐两个不错的mybatis GUI生成工具 -
masuweng:
(转)JAVA获得机器码的实现 -
albert0707:
有些扩展名为null
java 7中可以判断文件的contenttype了 -
albert0707:
非常感谢!!!!!!!!!
java 7中可以判断文件的contenttype了 -
zhangle:
https://zhuban.me竹板共享 - 高效便捷的文档 ...
一个不错的网络白板工具
http://bastengao.com/blog/2013/12/using-sigar-in-maven-project.html
1. 项目中添加依赖
<dependency>
<groupId>org.fusesource</groupId>
<artifactId>sigar</artifactId>
<version>1.6.4</version>
</dependency>
2. 添加sigar本地库到 java.library.path
sigar API 依赖本地库文件工作的,内部通过java.library.path加载本地库文件。 本地库文件根据不同的平台,有下面这些文件。
libsigar-amd64-freebsd-6.so
libsigar-amd64-linux.so
libsigar-amd64-solaris.so
libsigar-ia64-hpux-11.sl
libsigar-ia64-linux.so
libsigar-pa-hpux-11.sl
libsigar-ppc-aix-5.so
libsigar-ppc-linux.so
libsigar-ppc64-aix-5.so
libsigar-ppc64-linux.so
libsigar-s390x-linux.so
libsigar-sparc-solaris.so
libsigar-sparc64-solaris.so
libsigar-universal-macosx.dylib
libsigar-universal64-macosx.dylib
libsigar-x86-freebsd-5.so
libsigar-x86-freebsd-6.so
libsigar-x86-linux.so
libsigar-x86-solaris.so
sigar-amd64-winnt.dll
sigar-x86-winnt.dll
我试着将这些文件放在classpath下(src/main/resources)或者通过 sigar-dist 依赖的方式加载都以失败告终。网上有篇博客 讲如何通过解压 sigar-dist 依赖的方式,来组织 java.library.path,但是整个配置太过复杂。
最终我想到个办法是:
将 sigar 的本地库文件放在 src/main/resources/sigar 目录下,还是的 classpath 下
通过 java api 读取 sigar 路径,并将路径追加到 java.library.path中。
代码如下,详见gists。
import com.google.common.io.Resources;
import org.hyperic.sigar.Sigar;
import java.io.File;
import java.io.IOException;
/**
* @author gaohui
* @date 13-11-27 19:43
*/
public class SigarUtil {
public final static Sigar sigar = initSigar();
private static Sigar initSigar() {
try {
String file = Resources.getResource("sigar/.sigar_shellrc").getFile();
File classPath = new File(file).getParentFile();
String path = System.getProperty("java.library.path");
if (OsCheck.getOperatingSystemType() == OsCheck.OSType.Windows) {
path += ";" + classPath.getCanonicalPath();
} else {
path += ":" + classPath.getCanonicalPath();
}
System.setProperty("java.library.path", path);
return new Sigar();
} catch (Exception e) {
return null;
}
}
}
1. 项目中添加依赖
<dependency>
<groupId>org.fusesource</groupId>
<artifactId>sigar</artifactId>
<version>1.6.4</version>
</dependency>
2. 添加sigar本地库到 java.library.path
sigar API 依赖本地库文件工作的,内部通过java.library.path加载本地库文件。 本地库文件根据不同的平台,有下面这些文件。
libsigar-amd64-freebsd-6.so
libsigar-amd64-linux.so
libsigar-amd64-solaris.so
libsigar-ia64-hpux-11.sl
libsigar-ia64-linux.so
libsigar-pa-hpux-11.sl
libsigar-ppc-aix-5.so
libsigar-ppc-linux.so
libsigar-ppc64-aix-5.so
libsigar-ppc64-linux.so
libsigar-s390x-linux.so
libsigar-sparc-solaris.so
libsigar-sparc64-solaris.so
libsigar-universal-macosx.dylib
libsigar-universal64-macosx.dylib
libsigar-x86-freebsd-5.so
libsigar-x86-freebsd-6.so
libsigar-x86-linux.so
libsigar-x86-solaris.so
sigar-amd64-winnt.dll
sigar-x86-winnt.dll
我试着将这些文件放在classpath下(src/main/resources)或者通过 sigar-dist 依赖的方式加载都以失败告终。网上有篇博客 讲如何通过解压 sigar-dist 依赖的方式,来组织 java.library.path,但是整个配置太过复杂。
最终我想到个办法是:
将 sigar 的本地库文件放在 src/main/resources/sigar 目录下,还是的 classpath 下
通过 java api 读取 sigar 路径,并将路径追加到 java.library.path中。
代码如下,详见gists。
import com.google.common.io.Resources;
import org.hyperic.sigar.Sigar;
import java.io.File;
import java.io.IOException;
/**
* @author gaohui
* @date 13-11-27 19:43
*/
public class SigarUtil {
public final static Sigar sigar = initSigar();
private static Sigar initSigar() {
try {
String file = Resources.getResource("sigar/.sigar_shellrc").getFile();
File classPath = new File(file).getParentFile();
String path = System.getProperty("java.library.path");
if (OsCheck.getOperatingSystemType() == OsCheck.OSType.Windows) {
path += ";" + classPath.getCanonicalPath();
} else {
path += ":" + classPath.getCanonicalPath();
}
System.setProperty("java.library.path", path);
return new Sigar();
} catch (Exception e) {
return null;
}
}
}
发表评论
-
复习:强迫线程顺序执行方式
2019-01-03 23:42 1587方法1: 三个线程,t1,t2,t3,如果一定要按顺序执行, ... -
(转)不错的前后端处理异常的方法
2019-01-02 23:16 2021前言 在 Web 开发中, 我们经常会需要处理各种异常, 这是 ... -
info q的极客时间大咖说等资料下载
2018-08-15 08:40 3474info q的极客时间大咖说等资料下载,还有不少思维导图 链 ... -
CXF 客户端超时时间设置(非Spring配置方式)
2018-07-03 22:38 2238import org.apache.cxf.endpoint. ... -
(转)synchronized关键字画像:正确打开方式
2018-06-14 09:25 492https://mp.weixin.qq.com/s/b3Sx ... -
CountDownLatch的例子
2018-06-13 14:10 694public class StatsDemo { ... -
两道面试题,带你解析Java类加载机制
2018-06-12 16:29 617https://mp.weixin.qq.com/s/YTa0 ... -
Spring中获取request的几种方法,及其线程安全性分析
2018-06-11 09:03 672https://mp.weixin.qq.com/s/KeFJ ... -
内部类小结
2018-06-06 10:25 439https://mp.weixin.qq.com/s/hErv ... -
JVM虚拟机小结1
2018-06-04 20:43 5451 jps -l //列出详细的类名和进程ID 2)jps ... -
windows下自带命令行工具查看CPU资源情况等
2018-06-04 12:53 3108微软提供了不少命令行 ... -
(收藏)深入分析Java的序列化与反序列化
2018-05-30 15:21 620https://mp.weixin.qq.com/s/T2Bn ... -
apache common包中的序列化工具
2018-05-30 09:10 1846什么是序列化 我们的 ... -
JAVA8 JVM的变化: 元空间(Metaspace)
2018-05-24 22:30 969本文将会分享至今为至我收集的关于永久代(Permanent G ... -
(转)服务器性能指标(一)——负载(Load)分析及问题排查
2018-05-21 21:03 1368原创: Hollis Hollis 负载 ... -
(转)对象复用
2018-05-20 15:27 866public class Student { priv ... -
mapreduce中入门中要注意的几点
2018-05-06 08:59 675在 mapreduce中,比如有如下的词: I love b ... -
HDFS的基本操作
2018-05-02 21:47 942-mkdir 在HDFS创建目录 ... -
一个不错的开源工具类,专门用来解析日志头部的,好用
2018-05-02 20:00 774一个不错的开源工具类,专门用来解析日志头部的,好用。 http ... -
介绍个不错的RESTFUL MOCK的工具wiremock
2018-04-27 21:02 1909介绍个不错的RESTFUL MOCK的工具wiremock,地 ...
相关推荐
如果你不熟悉Maven,但想要在Eclipse中使用一个基于Maven的Web项目,可以遵循以下步骤: 1. **导入Maven项目到Eclipse**:在Eclipse中选择“File” > “Import” > “Maven” > “Existing Maven Projects”,然后...
Maven 项目转动态 Web 项目并部署到 Tomcat 是一个常见的操作,特别是在 Eclipse 和 Tomcat 环境下。本文将详细介绍如何将 Maven 项目转换为动态 Web 项目,并将其部署到 Tomcat 中。 Maven 项目转换为动态 Web ...
第一步:在IDEA中新建一个maven项目 1.使用骨架创建maven项目,此处选择:maven-archetype-quickstart 2.填入GroupId和ArtifactId 3.第一个选中maven安装的文件夹,第二个选中maven安装文件夹中的conf/settings....
在Eclipse中使用Maven进行项目管理和构建时,了解这些基本概念和命令是非常重要的。它们不仅能够帮助开发者高效地构建和部署项目,还能有效避免一些常见的问题。通过正确设置Maven配置以及合理使用这些命令,可以极...
Maven 依赖管理是通过 pom.xml 文件来管理的,例如可以在 pom.xml 文件中添加依赖关系,以便在项目中使用相应的库。 9. Maven 项目结构 Maven 项目结构主要包括 src/main/java、src/main/resources、src/test/java...
在Java开发中,Maven作为主流的构建工具,管理着项目的依赖关系。然而,当项目引入多个库时,可能会遇到依赖冲突的问题。依赖冲突通常发生在两个或更多库使用相同类的不同版本时,Maven默认会选择最高版本的依赖,但...
在文件选择器中找到项目的`pom.xml`文件,这是Maven项目的配置文件,导入后,IDEA会识别出这是一个Maven项目。 4. **导入依赖**: 导入`pom.xml`后,IDEA会自动读取其中的依赖,并将它们添加到项目的类路径中。在...
本文主要介绍了如何使用 ProGuard 对 Maven WEB 项目进行混淆,解决了 WEB 项目中混淆的难题。文章首先介绍了混淆的必要性,然后详细介绍了 WEB 项目的结构和 Maven 配置文件(pom.xml),最后展示了如何使用 ...
在本文中,我们将基于maven创建一个web项目,首先我们需要搭建maven环境,包括安装Myeclipse2013、Tomcat8.0、Jdk1.8和apache-maven-3.3.9。然后,我们需要配置jdk和maven的环境变量,包括设置JAVA_HOME和MAVEN_HOME...
在SpringBoot项目中,Maven 3.3.9 能够有效地帮助开发者管理和组织项目的构建过程。 ### Maven 的核心概念 1. **项目对象模型(Project Object Model,POM)**:Maven 项目的核心是POM,这是一个XML文件,包含了...
### Maven项目Eclipse导入步骤详解 #### 一、前言 在进行软件开发时,Maven作为一款自动化构建工具,能够极大地提高项目的构建效率。...希望本文能够帮助你在使用Maven和Eclipse的过程中更加顺利高效。
本文将深入探讨如何利用Maven构建多模块项目,以及在实际操作中需要注意的关键点。 1. Maven多模块项目结构: Maven多模块项目通常遵循一个标准的目录结构,包括一个顶级父 pom.xml(如test-hd-parent),和若干子...
通过以上步骤,你可以掌握在Eclipse中使用Maven构建和管理项目的基本操作。同时,"testweb_svn"源码提供了一个实际的案例,帮助你加深对Maven项目配置和Web开发的理解。在实践中不断探索和学习,你将更好地掌握Maven...
标题中的“springboot(web项目,非maven)”指的是一个基于Spring Boot框架构建的Web应用程序,但它不是使用Maven作为构建工具。Spring Boot简化了Java Web应用的开发过程,提供了快速构建可运行的应用程序的方式,而...
在创建过程中,你可以选择是否要使用Maven的默认项目结构,或者自定义项目骨架。在输入项目信息时,包括项目名称、集团包名等,你还可以通过`pom.xml`文件管理项目依赖。对于Web项目,你需要确保项目结构包括了`src/...
这篇文档将详细介绍如何在 MyEclipse 中导入 Maven 项目以及使用 Maven 的常见命令。 首先,要在 MyEclipse 中导入 Maven 项目,你需要通过以下步骤操作: 1. 右键点击 MyEclipse 左侧的项目视图空白区域。 2. ...
在IT行业中,Maven是一个非常重要的工具,尤其对于Java开发者来说,它是构建和管理Java项目的标准之一。"新建Maven项目基础"这个主题涵盖了创建、配置以及管理Maven项目的基本步骤和概念。以下是对这些基础知识的...
2. 使用IDE:大多数现代Java IDE(如IntelliJ IDEA,Eclipse)都集成了Maven,可以直接在IDE中创建Maven项目。 四、配置pom.xml pom.xml是Maven项目的核心配置文件,包含项目的基本信息、依赖、构建设置等。例如:...
Eclipse 搭建 Maven 项目详解 Maven 是一个项目管理工具,能够帮助开发者更好地管理项目的依赖关系...通过以上步骤,可以在 Eclipse 中搭建 Maven 项目,使用 Maven 管理依赖关系和编译过程,提高开发效率和项目质量。