Building Your Own Open Source Development Environment

Building Your Own Open Source Development Environment

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. Building Your Own Open Source Development Environment Gary Ashley Jr. CTA, Inc. garyashley at cta dot com Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 1 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. Agenda What is Open Source? How does Open Source work? What products are available? What is the basic structure? Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 2 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. Agenda (Continued) How do I install and configure: ¾Eclipse? ¾MySql? ¾JBoss? ¾Maven? Questions Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 3 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. What Is Open Source? To the community Open Source is: ¾“The basic idea behind open source is very simple: When programmers can read, redistribute, and modify the source code for a piece of software, the software evolves. People improve it, people adapt it, people fix bugs. And this can happen at a speed that, if one is used to the slow pace of conventional software development, seems astonishing.” http://www.opensource.org ¾Try http://www.sunsource.net/ Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 4 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. What Is Open Source? (Continued) To me Open Source is about freedom of choice, freedom to collaborate, and freedom to share knowledge. ¾This empowers me to make educated choices, trade knowledge with my peers, and better myself in my chosen craft. ¾Better align with “emerging standards”. Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 5 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. What Is Open Source? (Continued) To my company and our customers, Open Source is about minimizing risks, reducing costs, and increasing time to market. ¾Share risk with community of peers. ¾Reduce licensing costs. ¾Lower maintenance costs. ¾Don’t reinvent the wheel if it’s already been done. Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 6 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. What Products Are Available? Operating Systems Database Office Productivity Web Servers Email Servers and Clients Browsers Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 7 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. Products? (Continued) IDEs J2EE Application Servers Code Repositories Coding Frameworks Pre-built Components/Widgets Other: ¾Music, movies, politics, teaching, … Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 8 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. Operating Systems Try http://www.freeos.com/ for a large listing. Some examples include: ¾Linux – http://www.linux.org/ ¾Darwin – http://developer.apple.com/darwin/ ¾BEOS – http://www.beunited.org/ ¾OpenBSD – http://www.openbsd.org/ ¾Handhelds – http://www.handhelds.org ¾Wireless Embedded Sensor Networks – http://www.tinyos.net/ Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 9 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. Databases MySql PostgreSQL Firebird Borland Interbase Apache Derby (formerly IBM Cloudscape) Hypersonic SQL Berkeley DB mSQL Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 10 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. Office Productivity Open Office OpenOSX Office Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 11 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. Web Servers Apache HTTP Server Darwin Streaming Zope Savant Web Server JBoss Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 12 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. Email Servers and Clients Servers: ¾Sendmail ¾James Clients: ¾Thunderbird ¾Ximian Evolution ¾eMailman ¾ICEmail ¾Pooka Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 13 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. Browsers Mozilla Firefox Camino Amaya – W3C project Netscape Avant Opera Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 14 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. IDEs Eclipse ¾Many useful plugins are also available NetBeans SharpDevelop (C sharp) Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 15 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. J2EE Application Servers JBoss Apache Geronimo (in future) Enhydra Resin Zope Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 16 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. Code Repositories CVS Subversion OpenCM Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 17 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. Coding Frameworks These are too numerous to name, but this list of websites hits quite a few: ¾http://www.apache.org ¾http://jakarta.apache.org ¾http://www.sourceforge.net ¾http://www.tigris.org ¾http://www.opensymphony.com ¾http://solutions.objectweb.org ¾http://www.sunsource.net Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 18 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. Other Other: ¾Music, movies, politics, teaching, … • OpenCoke • Wikipedia Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 19 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. What Is the Basic Structure? Here is a basic directory structure to support the environment. Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 20 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. How to for Eclipse? Download and Unzip Eclipse 3.0 9into /java/develop/tools ¾Adjust Basic Settings: Window/Preferences 9For example, you can adjust the key settings to emulate other tools that you may be more comfortable with. 9Under java, build path, classpath variable add a new MAVEN_REPO variable that points to /java/develop/repository ¾Additional Plugins • Most plugins are downloaded and unzipped into the /{eclipse_home}/plugins directory Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 21 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. Eclipse Plugins (downloaded) JadClipse (Decompiler) Jalopy (Code Formatter) QuantumDB (Database) DBEdit (Database) Jasper Assistant (Jasper Report Builder) XMLBuddy (XML Editor) TomcatPlugin (Integrate w/ Tomcat) Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 22 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. Eclipse Plugins (Live Update) You can perform live updates, including new plugins by • Menu: Help/Software Updates/Find and Install Jboss IDE (http://jboss.sourceforge.net/jbosside/updates) Maven Workshop (http://www.binamics.com/mavenworkshop/eclipse3) Hibernate Sync (http://www.binamics.com/hibernatesync) Visual Editor (eclipse) Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 23 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. How to for MySql? (Linux) Download and Unzip the MySql 4.1 tar file 9into /java/develop/tools ¾Choose 1 of 5 files, small, medium, large, huge, innodb_heavy to use as your base configuration. • located in {mysql_home}/support-files • edit the file to point to a socket file created each time mysql starts: 9[mysqld] 9socket=/var/tmp/mysql.sock 9[client] 9socket=/var/tmp/mysql.sock Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 24 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. How to for MySql? (Linux) Run these commands as root 9 shell> groupadd mysql 9 shell> useradd -g mysql mysql 9 shell> gunzip < /path/to/mysql-VERSION-OS.tar.gz | tar xvf - 9 shell> ln -s full-path-to-mysql-VERSION-OS /usr/local/mysql 9 shell> cd /usr/local/mysql 9 shell> scripts/mysql_install_db --user=mysql 9 shell> chown -R root . 9 shell> chown -R mysql data 9 shell> chgrp -R mysql . 9 shell> cp support_files/mysql.server /etc/init.d/mysql 9 shell> cp support_files/my-small.cnf /etc/my.cnf *** if you used something other than my-small in the screen before, change the name appropriately 9 shell> chmod +x /etc/init.d/mysql 9 shell> chkconfig --add mysql 9 shell> /etc/init.d/mysql start Gary Ashley Jr. — Building Your Own Open Source Development Environment Page 25 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, CTA, Inc. Once Installed… Once installed, you can use the following command to connect to mysql and grant permissions, etc.: ¾ mysql -u root • From here, you can run commands like: 9 “show databases;” 9 “use {databasename};” 9 “show tables;” To more securely set up mysql: http://security.linux.com/security/04/08/19/1422204.shtml?tid=2&tid=74 You can download the “Administration” tool from the mysql.com website. Gary Ashley Jr. —

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    37 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us