`

BioJava安装入门

 
阅读更多

和生物信息学沾边的编程语言浩如烟海,BioPHPBioJavaBioPerlBioPythonBioRuby等等……Bioinformatics.org上最新的投票显示(http://www.bioinformatics.org/poll/index.php?dispid=16):BioJava17%的选择率位列第三,仅次于PythonPERL。如果考虑到在其他领域的受欢迎程度和程序执行速度,则Java又大幅胜出。那么BioJava能做些什么呢?目前,其功能主要覆盖以下几个方面:基因组(序列转换、基因注释、BLAST&FASTA);蛋白质组(等电点计算、蛋白结构预测、序列比对)、一些常用算法(遗传算法、HMM、动态规划等)和BioSQL(生物学数据库支持,包括一般的数据库类型、序列数据库和Ontology数据库)。就我目前使用过的极为有限的编程工具而言,与R相比,优势在于嵌入到Java程序更为方便,缺点是不容易上手(需要先熟悉Java);与Matlab相比优势在于开源,与Perl相比执行效率更高。这里以简单的DNA序列翻译成RNA为例,介绍其安装和初步的使用。

首先,到下面这个地址下载BioJava的发行包,目前版本为1.5,需要Java运行环境1.4.2以上。http://www.biojava.org/download/bj15/bin/BioJava1.5-bin.tar.gz

Java环境的配置这里就不再啰唆啦,有问题的可以参考某酷的“实践分享之一”。

把上面的那个压缩包放开到方便的目录(我这里是C:/),在CLASSPATH环境变量中加上这些:

C:/biojava-1.5.jar;biojava的核心文件

C:/bytecode.jar;biojava运行的必须文件

C:/commons-cli.jar;仅在编译和使用某些Demo时才会用到

下面这三个是仅涉及到BioSQL时才会用到的包

C:/commons-collections-2.1.jar;

C:/commons-dbcp-1.1.jar;

C:/commons-pool-1.1.jar

配置完毕后在C盘新建一个test.java文本文档,输入以下内容:

import org.biojava.bio.symbol.*;

import org.biojava.bio.seq.*;

public class test {


public static void main(String[] args) {


try {


//make a DNA SymbolList


SymbolList symL = DNATools.createDNA("atgccgaatcgtaa");


symL = DNATools.toRNA(symL);


//just to prove it worked


System.out.println(symL.seqString());


}


catch (IllegalSymbolException ex) {


//this will happen if you try and make the DNA seq using non IUB symbols



ex.printStackTrace();


}catch (IllegalAlphabetException ex) {


//this will happen if you try and transcribe a non DNA SymbolList


ex.printStackTrace();


}

}

}

回到C盘根,如果上述过程一切顺利,输入javac test.java java test就能看到运行结果:

augccgaaucguaa

分享到:
评论

相关推荐

    biojava:BioJava是一个开源项目,致力于提供用于处理生物数据的Java库。

    BioJava是一个开源项目,致力于提供用于处理生物数据的Java框架。 它提供分析和统计例程,用于常见文件格式的解析器,流行算法的参考实现,并允许处理序列和3D结构。 biojava项目的目的是促进生物信息学的快速应用...

    JAVA程序设计入门教程

    **JAVA程序设计入门教程** Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems(现为Oracle Corporation的一部分)在1995年推出。它的设计理念是“一次编写,到处运行”,这意味着编写好的Java代码可以在...

    Java NIO 简单入门

    Java NIO(Non-blocking Input/Output)是一种在Java中处理I/O操作的新方式,相比于传统的BIO(Blocking I/O),NIO提供了更高效、更具扩展性的I/O模型。NIO的核心在于非阻塞,它允许Java程序在等待数据就绪时进行...

    Java NIO入门

    Java NIO(Non-blocking Input/Output)是Java平台中用于替代标准I/O(Blocking I/O)的一种机制。自Java 1.4版本引入以来,NIO已经成为开发高性能、高并发应用的重要工具。NIO的核心在于它能允许Java程序在处理输入...

    《初入JavaIO之门BIO、NIO、AIO实战练习》源码

    netty案例,netty4.1基础入门篇零《初入JavaIO之门BIO、NIO、AIO实战练习》 ...

    NIO 入门.chm,NIO 入门.chm

    **NIO(New Input/Output)是Java编程语言中用于替代标准I/O(BIO,Blocking I/O)的一组API,它提供了非阻塞式的I/O操作方式,极大地提升了Java在处理I/O密集型应用时的性能。NIO在Java 1.4版本中被引入,之后在...

    Java精华,不可错过

    首先,Java入门基础是学习任何编程语言的起点。这部分可能包含以下内容: 1. **Java环境配置**:安装JDK(Java Development Kit),配置JAVA_HOME环境变量,以及设置classpath,确保可以正确编译和运行Java程序。 2....

    Java高级架构必备知识点

    - **NIO基本概念及BIO、AIO的对比分析**:理解NIO、BIO和AIO之间的区别。 - **Netty实现IM聊天系统**:基于Netty开发即时通讯系统。 **7.21 分布式缓存技术-Redis** - **Redis的安装及数据类型分析**:掌握Redis的...

    Netty网络编程视频教程

    近百节视频详细讲解,需要的小伙伴...5. NIO vs BIO 二. Netty 入门 1. 概述 2. Hello World 3. 组件 4. 双向通信 三. Netty 进阶 1. 粘包与半包 2. 协议设计与解析 3. 聊天室案例 四. 优化与源码 1. 优化 2. 源码分析

    NIO入门

    在Java编程领域,NIO(Non-blocking Input/Output,非阻塞I/O)是一种重要的I/O模型,它与传统的BIO(Blocking I/O)模型相比,提供了更高的并发性能和更有效的资源利用。NIO在Java 1.4版本中被引入,其主要设计目标...

    Java精粹:从基础到高级 - 一个全面的学习指南

    Java基本功​​:Java入门:涵盖了Java语言的特点、JVM、JDK、JRE的详细解释,Oracle JDK与OpenJDK的对比,Java和C++的区别,以及Java程序的主类定义等。基本数据类型:详细介绍了Java中的基本数据类型及其包装类,...

    NIO入门学习源码

    **NIO(New Input/Output)**,全称为New IO,是Java中的一种I/O模型,它是相对于传统的BIO(Blocking I/O)模型而言的。NIO在Java 1.4版本引入,主要目的是为了提高在高并发环境下的I/O性能。与BIO不同,NIO是非...

    nio入门文档及示例代码

    Java NIO(New IO)是Java 1.4版本引入的一个新API,全称为New Input/Output,是对传统IO(BIO)模型的一种改进。NIO提供了非阻塞的I/O操作方式,允许一个线程处理多个输入和输出流,提高了程序在处理并发I/O时的...

    java--全家桶课件

    这个“Java--全家桶课件”全面覆盖了Java编程从入门到进阶的重要知识点,对于想要系统学习Java的人来说是一份宝贵的资源。通过深入学习,开发者可以掌握Java编程技能,进而能够开发出高效、稳定的企业级应用。

    你不可错过的Java学习资源清单

    4. Java网络编程与NIO:这部分内容讲解了Java的网络编程,包括Socket、IO模型(BIO、NIO、AIO)和相关的Linux网络编程知识。同时,介绍了Tomcat和Netty这两个NIO相关的高性能服务器。 5. JavaWeb技术世界:这个专栏...

    java网络编程.doc

    在这个文档中,我们将深入探讨Java语言在网络编程中的基本概念,并提供初级入门的指导。以下是对这些概念的详细解析: 首先,我们来理解Java的基本概念。Java是一种面向对象的、跨平台的编程语言,由Sun ...

    mina 入门 教程

    - **线程模型**:Mina提供了多种线程模型,如NIO(非阻塞I/O)、BIO(阻塞I/O),可以根据系统负载和性能需求选择合适的模型。 - **异步编程**:Mina的事件驱动模型非常适合配合Java的CompletableFuture或反应式...

    bio4j-neo4j:Bio4j 的 Neo4j 特定实现

    入门 您有两个主要选择: 从头开始导入 Bio4j 如果您想从头开始导入您自己的 Bio4j 数据库,请访问部分。 AWS (亚马逊网络服务)用户 您可以在此处找到您感兴趣的版本的相应信息。 查看此部分以了解如何与 Bio4j ...

    J2SE技术总结-Java学习精华教程-电子书

    .....Java语法入门 ..........概述 ..........变量与数据类型 ..........标识符 ..........运算符 ..........控制台输入输出 ..........流程控制 ..........数组的使用 .....字符串和正则表达式 ..........字符串 .....

    Java springboot 整合mina 框架,nio通讯基础教程,mina框架基础教程.zip

    Java NIO,全称为New Input/Output,是Java在1.4版本引入的一种新的I/O模型,它提供了与传统的BIO(Blocking I/O)不同的处理方式。NIO的特点在于其非阻塞特性,能够高效地处理多个连接请求,特别适合于高并发的网络...

Global site tag (gtag.js) - Google Analytics