设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10039|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: f$ z; p8 y0 T: ^( b+ C  Y! a5 w& d) f. f% j9 P
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' V0 t- `% y/ U& W1 O4 H* c6 r7 _
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 D; R8 m5 U; ]4 O
swarm.SignatureNotFoundException
9 T5 I7 k0 P5 N, d5 I4 c+ M( ~        at swarm.Selector.<init>(Selector.java:76)& u% S. l: L+ r' r4 u- \
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: Q' L8 A# E$ j        at ActionGroupDemo.main(ActionGroupDemo.java:67)
- S: W3 \5 o2 C7 }
% G  ?, ^6 x5 \3 x( J  o
4 `/ m) [( p4 j* U- T; [import swarm.objectbase.SwarmImpl;
$ w; g3 D. v$ Q" himport swarm.objectbase.Swarm;5 C. L/ W% ~2 M* w
import swarm.activity.ScheduleImpl;
! C* a% \0 \& e8 U0 P2 ?( U! T8 Nimport swarm.activity.Activity;* d' Z' a4 W1 b6 u  X0 |. K0 P
import swarm.activity.ActionGroupImpl;
, t! }$ @- _0 O+ s6 B& N+ u- Rimport swarm.collections.ListImpl;
2 N( x2 R- t) u. L- Fimport swarm.defobj.Zone;
" D* ?5 u/ P! k( [import swarm.Globals;
" f1 F9 m& }1 }2 r6 Z- X- himport swarm.Selector;, I0 N% c& ?  e
import swarm.activity.ActionGroup; $ R6 c- u% ?5 o# @
class Agent {
: @* N- ~# i) S: k        char id;
" W& G; ^4 T8 F$ }* J: w6 W$ B, o- _' d/ j( o
        Agent(char id) {% g; X9 O2 j0 U1 e
                this.id = id;
, t4 P4 r7 L( b) |        }
, k4 b1 F+ G3 R$ V, S9 M/ |. l7 d$ t* J/ |8 \# m- ~
        public void agentStep() {8 M, M9 \; j* M
                System.out.println(id + ":" + Globals.env.getCurrentTime());
# U1 y# U) E3 E5 C9 @9 [9 n        }/ X: ]" L6 M( H# D# D- d6 L
}
+ u8 a3 P+ @2 a: t0 H8 F) @* f& W
public class ActionGroupDemo extends SwarmImpl {
! d- g1 L+ C% r1 s& r        ScheduleImpl schedule;4 g: Y3 [% \" P, R, O
        ActionGroupImpl actionGroup;: b* m5 R0 |2 |5 d5 k5 n
        ListImpl list;, K, F6 x8 [- ?' ^) t9 W  L1 @- t
        char Id = 'a';; v2 _1 [1 t5 b/ C- A5 |" s

) ^& J. O' L' X, l: K. Z0 n) ~        ActionGroupDemo(Zone aZone) {: X& H7 f7 t' j& |( O
                super(aZone);3 \4 h0 e! y% e& p* }# `
                list = new ListImpl(aZone);
" d( \2 [$ B- V. w3 h9 p, k) I                swarmSetp();8 ?% l& a1 v+ E2 f
                actionGroup = new ActionGroupImpl(aZone);
5 C7 ^3 ~% B" w* c, b7 y: s8 E                schedule = new ScheduleImpl(aZone);
8 L. V% O6 g! `7 ]& b% l8 z                try {0 j/ q' S6 M$ z5 e8 c. }  J
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 M' g4 f" Q1 Q" V) g
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& K- }- U# h7 k                        
4 E/ [4 ?2 p' Z& b. @( i                        actionGroup.createActionForEach$message(list, agentSel);. |& D( m2 d6 r
                        actionGroup.createActionTo$message(this, swarmSel);
3 n, X  H! ~9 }" b/ @                        schedule.at$createAction(0, actionGroup);5 m7 c4 C/ n# Y; j6 b
                        schedule.at$createAction(1, actionGroup);
* e1 G! ]: ?4 W  F+ l/ ~+ `                        schedule.at$createAction(2, actionGroup);/ D5 |3 X$ A4 k1 Y

; J. `5 X/ a, e3 W  p                } catch (Exception e) {
5 X. K" \7 q2 n                        e.printStackTrace(System.err);
$ @5 v* }! n9 o& }; q                        //System.out.println(e);) H' [1 m! e/ \/ Z8 |% \3 P
                        System.exit(1);! ?- {  Y3 W( I( V! g: C. e3 e9 n
                }2 _3 B0 q% H8 `
- l2 W; ]) {, F: y0 y
: H. k8 p) o* l7 f5 t: g9 b- ~- s
        }5 @, Q; ~/ F# O8 m
" ~% `9 e9 g. d( c
        private void swarmSetp() {# g( v2 ?# J9 ^! t) U
                list.addLast(new Agent(Id));
% [( {9 a  g% k. n* c                Id++;
8 e* m4 m* Y, v% T        }" d  x& t1 s9 E2 Q% P
9 F- r. M# R  Y% c* Q: a2 q) r  N
        public Activity activateIn(Swarm context) {3 ~& ~5 i; X' A% {- G) W. L  T
                super.activateIn(context);) u; K0 @4 U! N& C9 l
                schedule.activateIn(this);
. G0 ^$ q0 S  M, l" d                return getActivity();+ a! C% \4 k% g" q2 y
        }
# S7 c5 ?7 X4 E8 ?+ c! s! d
) P* ?) ~0 Z9 s7 e2 @        public static void main(String[] args) {- y  k- X+ O8 \' O0 b
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* J4 b) |2 z. A5 N# N/ i9 [/ \                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. ?4 v1 D  F! r/ f7 I) E7 Y- z* g
                swarms.buildObjects();/ y; Q, G4 R' A6 f3 e7 q5 S
                swarms.buildActions();2 _# C+ Q! R- v
                swarms.activateIn(null).run();2 Y, E0 h( ^4 G: X! M' G
        }
; A$ R! J- t3 Z6 A1 h) d/ p# m4 }7 b" s2 ?) J- b6 |
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-1 12:00 , Processed in 0.019264 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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