• Home
Name Date Size #Lines LOC

..--

bom/03-May-2024-10988

core/03-May-2024-63,55143,543

examples/src/example/xml/03-May-2024-338236

extensions/03-May-2024-33,53622,051

jdk8-tests/03-May-2024-548376

latest-api-diffs/03-May-2024-42,39438,707

lib/build/03-May-2024-31,96031,943

util/03-May-2024-155111

.gitattributesD03-May-2024206 1512

.gitignoreD03-May-2024107 1313

.travis.ymlD03-May-20241.3 KiB3729

Android.bpD03-May-20243.5 KiB123109

CONTRIBUTING.mdD03-May-20242.7 KiB6242

COPYINGD03-May-202411.1 KiB203169

CleanSpec.mkD03-May-20242.6 KiB580

METADATAD03-May-2024397 1918

MODULE_LICENSE_APACHE2D03-May-20240

NOTICED03-May-202411.1 KiB203169

OWNERSD03-May-2024167 43

README.mdD03-May-20242.3 KiB2515

build.propertiesD03-May-20241.3 KiB4039

build.xmlD03-May-202413.5 KiB312274

common.xmlD03-May-20246.2 KiB157131

pom.xmlD03-May-202415.7 KiB490416

README.md

1Guice
2====
3
4**Latest release: [4.1](https://github.com/google/guice/wiki/Guice41)**
5
6**Documentation:** [User Guide](https://github.com/google/guice/wiki/Motivation), [4.1 javadocs](http://google.github.io/guice/api-docs/4.1/javadoc/index.html), [Latest javadocs](http://google.github.io/guice/api-docs/latest/javadoc/index.html) <br/>
7**Continuous Integration:** [![Build Status](https://api.travis-ci.org/google/guice.png?branch=master)](https://travis-ci.org/google/guice) <br
8/>
9**Mailing Lists:** [User Mailing List](http://groups.google.com/group/google-guice) <br/>
10**License:** [Apache 2.0](http://www.apache.org/licenses/LICENSE-2.0)
11
12Put simply, Guice alleviates the need for factories and the use of new in your Java code. Think of Guice's @Inject as the new new. You will still need to write factories in some cases, but your code will not depend directly on them. Your code will be easier to change, unit test and reuse in other contexts.
13
14Guice embraces Java's type safe nature, especially when it comes to features introduced in Java 5 such as generics and annotations. You might think of Guice as filling in missing features for core Java. Ideally, the language itself would provide most of the same features, but until such a language comes along, we have Guice.
15
16Guice helps you design better APIs, and the Guice API itself sets a good example. Guice is not a kitchen sink. We justify each feature with at least three use cases. When in doubt, we leave it out. We build general functionality which enables you to extend Guice rather than adding every feature to the core framework.
17
18Guice aims to make development and debugging easier and faster, not harder and slower. In that vein, Guice steers clear of surprises and magic. You should be able to understand code with or without tools, though tools can make things even easier. When errors do occur, Guice goes the extra mile to generate helpful messages.
19
20For an introduction to Guice and a comparison to new and the factory pattern, see [Bob Lee's video presentation](https://www.youtube.com/watch?v=hBVJbzAagfs). After that, check out our [user's guide](https://github.com/google/guice/wiki/Motivation).
21
22We've been running Guice in mission critical applications since 2006, and now you can, too. We hope you enjoy it as much as we do.
23
24[![jolt award](http://crazybob.org/jolt.png)](http://joltawards.com)
25