设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13809|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ k/ V8 G) ?2 y# g. k( @
7 I' _1 A/ R9 w6 X# X本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ s- ~% Z" ~, q- Y( n% b& M! e1 \
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., G" l4 O% X: ^) c3 z7 l5 f4 @
swarm.SignatureNotFoundException
5 g2 Z$ k2 g/ a! x$ t( I8 A! _        at swarm.Selector.<init>(Selector.java:76)' ^7 J3 ~. f. D0 \8 T4 v
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& d* Q6 |9 ~2 B* C7 x! ^        at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 O/ n7 s' I" K: ~5 |
$ _/ G: y! b  W- L0 a2 p# K0 V4 Z  {/ |- J3 g( g  L- {+ s
import swarm.objectbase.SwarmImpl;4 `6 M# C: f/ o% }5 v
import swarm.objectbase.Swarm;
& b8 [4 w7 K2 X$ b. T# C' x* S) aimport swarm.activity.ScheduleImpl;: J& q% N) \4 y* s' w8 j; t
import swarm.activity.Activity;
( L' D* _7 ~; a; k; C, U/ [4 A2 Yimport swarm.activity.ActionGroupImpl;" V2 g0 M1 c1 [$ P
import swarm.collections.ListImpl;( G0 c5 d. P/ F; Y( L- f! m
import swarm.defobj.Zone; + t1 x; ^: w' l9 R
import swarm.Globals;) A( b% c3 x( f- u0 V1 ~
import swarm.Selector;9 z* L# r* V; x, w7 o
import swarm.activity.ActionGroup;   `# S0 Y3 P; z* j
class Agent {
/ A2 T/ e0 ^/ Y+ [7 y2 V        char id;
% v! [4 i" d! a; t3 V- c0 n' g# L( F" K) B( v1 z4 j1 r% B
        Agent(char id) {
* i, s3 b, X2 I                this.id = id;  A6 Z' A2 k* R
        }
9 C. y& V/ i1 k- i* p+ T  |: o+ c& O
        public void agentStep() {' l  p1 t) d" M  E( i3 S" f
                System.out.println(id + ":" + Globals.env.getCurrentTime());
; N! t4 M* g& G6 H' C5 s, z9 Z6 M        }
+ e7 s# A$ s* r  N! Y4 r}
. Q: M: g3 w, F; x; {! \8 ?
' b& O) i/ }+ e: ]) |/ @) Opublic class ActionGroupDemo extends SwarmImpl {
$ @; }5 I6 \+ h4 l$ |9 ^6 \, Z7 c# z        ScheduleImpl schedule;
( ]/ b5 ?; B9 F5 z( L8 @/ L$ D        ActionGroupImpl actionGroup;4 }5 V3 C0 n! _  u
        ListImpl list;" M7 Y# r2 f8 Q, }
        char Id = 'a';
& u7 `2 z! S. e3 S- J
3 C0 q& \% |/ [9 C$ P4 K0 X        ActionGroupDemo(Zone aZone) {$ A1 i' T8 {* T8 \: m
                super(aZone);8 U# J8 {" X  d2 N' S6 {: g! B
                list = new ListImpl(aZone);
& e% a+ j/ M5 z+ O( r% u- `                swarmSetp();" E. z6 {) [) I$ ]% W
                actionGroup = new ActionGroupImpl(aZone);, j) I7 j' N/ }) ^* G( N3 y$ L+ m
                schedule = new ScheduleImpl(aZone);
( H. X3 k" k+ e# q8 w1 P: k6 g5 D                try {
! B' g, U1 D; Q4 G  M4 _, Z                        Selector agentSel = new Selector(Agent.class, "agentStep", false);" N- a0 I; m5 l0 G# o
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# a4 m4 v% n; I9 ]
                        
1 @+ l5 q( _( H- c                        actionGroup.createActionForEach$message(list, agentSel);
! [2 B/ V/ n/ x) P: g. G( C3 d) ]# k/ _                        actionGroup.createActionTo$message(this, swarmSel);
0 B- T0 n0 j2 o) |) s                        schedule.at$createAction(0, actionGroup);
0 a/ e7 t4 t( f9 O' O  Q                        schedule.at$createAction(1, actionGroup);; B# Z9 K5 D: j' s
                        schedule.at$createAction(2, actionGroup);0 S$ Z! F& [5 O& ^1 j# C0 z: P9 r

7 o9 f; @# g. j  {- l                } catch (Exception e) {
- Y" y% m. p2 A. P. b9 @                        e.printStackTrace(System.err);7 w/ K( ?9 t$ l, R" r( x. i" j
                        //System.out.println(e);+ Y( X( G4 Q6 V. K
                        System.exit(1);+ z+ L3 C* k' q) n! x1 c: s0 ~
                }
# y0 |2 w/ g. z
' D. U' h3 \! {1 \; P
# p6 O1 w+ s, K6 ~+ l/ m6 _        }
% T+ F' E9 G4 K7 E& m( Z
# l' x2 l& F) Q' [+ I* e. n        private void swarmSetp() {
% Z; f# G/ K8 C! u                list.addLast(new Agent(Id));
* B! H! ^8 C! s2 u: C2 Y                Id++;6 d3 o/ C; h* ]; l
        }
" `' h/ n9 @6 {7 B
& `1 j3 H$ G- G- `: }. K  X) y        public Activity activateIn(Swarm context) {2 x( E- ]! C3 s% w
                super.activateIn(context);5 s0 t- v8 ]6 F9 m! |
                schedule.activateIn(this);
0 }; t3 m9 P* x                return getActivity();; X1 r  Q  ?4 r7 j5 ?" v
        }4 L3 K6 @( B& C2 B( t

% V* x- m9 D4 v. W4 `& C1 h        public static void main(String[] args) {8 T, T" Z6 ^& d8 Q. @' x" C  D
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ m0 D7 A" a: y7 ~                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. H- a# h5 v! Z' f/ w; F& m6 X                swarms.buildObjects();: |0 Y9 Q# }  E" z
                swarms.buildActions();
1 e! j, V, h) w7 a& d* c                swarms.activateIn(null).run();
0 n+ B" y5 y! n, g        }
: s- R% z/ I* g$ T) d% m$ a' a# \- c
3 |" b) l' i9 F7 m}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-9-18 08:53 , Processed in 0.015660 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表