defunct / cafe Goto Github PK
View Code? Open in Web Editor NEWJava builds Java.
Home Page: http://defunct.github.com/mix
License: MIT License
Java builds Java.
Home Page: http://defunct.github.com/mix
License: MIT License
MIX Java project builds in Java. Source: http://github.com/bigeasy/mix/tree/master Documentation: http://wiki.github.com/bigeasy/mix Issues and Tasks: http://bigeasy.lighthouseapp.com/projects/44183-mix License: The MIT License Dependencies: Jav-a-Go-Go: http://github.com/bigeasy/go-go Spawn: http://github.com/bigeasy/spawn Comfort I/O: http://github.com/bigeasy/comfort-io Reflective: http://github.com/bigeasy/reflective Cassandra: http://github.com/bigeasy/cassandra Contact: [email protected] See-Also: Jav-a-Go-Go http://github.com/bigeasy/go-go Java Cups http://github.com/bigeasy/cups PURPOSE Mix is a command line utility for jar repository management and JVM based language compilation. CONTENTS Sub project branches. cobertrua - Cobertura tasks. Checkout a sub project branch: git clone git://github.com/bigeasy/mix.git mix-cobertura cd mix-cobertura git branch --track cobertura origin/cobertura git checkout cobertura MOTIVATION I do not like Ant. Maven is fine, but heavywight and mostly XML. Mix is a Java tool for building Java and other JVM languages. It has minimal external dependencies. It strives to be a first-class citizen in a UNIX enviornment, while being as usable as a command line application can be in a Windows enviornment. It's design is influences by the UNIX shell, and tools like git. Output is not "I'm doing this, I'm doing that" trace messag spew. Output is meaningful and can be fed to tools like sed, awk, Perl and Ruby. Mix likes to emit HTML pages when human readable reports are desired. Mix will put up with whatever templating engine is forced upon it by a development tool, but Mix always prefers lightweight, no-nonsense Freemarker template language. Mix does not have a pure-Java philosophy. You can use Java to write a task, if you believe that will make a cross-platform build possible. However, if you are developing in a UNIX environment, you can just as easily call Subversion or git from a shell script, transfer files to your server using ssh-agent and scp. Mix doesn't want to elminiate your shell enviornment,if you have one that works for you. If you don't have a command line enviornment that works for you, Mix is easy to extend, it is a simple as writing a plain-old Java object, a Java Bean, that can perform the tasks specific to your build. This is simple enough, because Mix will manage your classpath and see to that you have all your dependencies in your class loader. While we're on the subject of dependencies, unlike other Java tools, Mix dooes not pull down your jar files just-in-time. Rather, Mix has a number of commands for building your repository, but you don't have to pay for a dependency update hit with every command you run. Mix believes that repository management and classpath management are separate and distinct tasks. Many tools try to treat jars as artifacts that magically update and vivify, but that magic never works without a lot of repository configuration to make it work. It is magic if everything you need is in the Maven central repository, but the moment you have to have an edge release, or a patched build, then you have to maintain your own repository. The tools for managing your own repository are weak, because repository management is supposed to be centralized, you end up having to build a central repository somewhere that you can pull from, in lieu of or in addition to the Maven central repository, so you have to manage a central repository in order to have your local repository. Mix intead manages your local repository, allowing you to import the jars you need, build your distributions, and if you want a central repository to pull from, you can use the same local repository toolset on your server. No, Mix makes no attempt to distribute repositories, since Jars are not sources. In fact, Mix gives you repository management tools. You get used to building your repository and forgetting about it, just as through you were managing Ruby Gems or Python Eggs. USAGE javac go/go.java java go.go mix pull java go.go mix pull
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.