设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12572|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( L; ?" |9 Z7 `+ f- u0 v0 b5 U
3 [4 d3 l7 z: t本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; i( L* p% y$ u6 ]以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 p. T, J% R7 J. E! Z2 y& oswarm.SignatureNotFoundException7 E' F* d+ D/ S8 j2 x/ G" j
        at swarm.Selector.<init>(Selector.java:76)7 W2 E) @5 m7 W; Z: j4 |6 ]& z
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 m. }$ H4 t$ r2 M, e+ l7 N- e: o
        at ActionGroupDemo.main(ActionGroupDemo.java:67)& ^! C1 `/ `! `. M4 T8 u0 D9 c5 {: M: n
; o$ `9 ]- i2 t. g

* Y8 a: H" n* h- o! Rimport swarm.objectbase.SwarmImpl;
) ]6 F7 E( ]" ~7 B0 Dimport swarm.objectbase.Swarm;) K3 \; x- H1 y% a
import swarm.activity.ScheduleImpl;% d( ]2 R! b/ ^/ |$ v  ?
import swarm.activity.Activity;" }/ @7 }, [$ i( L# Y( p
import swarm.activity.ActionGroupImpl;# O- h  o* L2 P
import swarm.collections.ListImpl;, m) D6 {% a2 p) u. t" o1 a
import swarm.defobj.Zone; 5 p1 t7 m# v+ h- ^* f  H
import swarm.Globals;
2 h9 e" [- W8 Y# W4 u' Qimport swarm.Selector;
- U  V  R, V3 [$ b* j( ^import swarm.activity.ActionGroup; 7 B1 ?5 |# T5 G8 m; G
class Agent {
( m+ y5 [) N2 B, G7 L( ^$ |# T! p        char id;
5 G  K3 m0 c: c4 {0 v
/ L4 Z, D8 M1 h0 f- X        Agent(char id) {
+ s5 c" c5 Y+ R0 o2 i. }/ [                this.id = id;
8 R% s$ [6 `1 g0 p) d        }# _+ T" b- R# x6 T
" d) s! ?' n# @# r1 f( u3 m# z
        public void agentStep() {6 u- B# n% q1 K# F
                System.out.println(id + ":" + Globals.env.getCurrentTime());7 s: [. L6 b1 g/ |. C
        }5 _5 D' W) I  f$ E4 L) J
}- J, y& _' O& H8 T

% M* ~9 B$ W, m% _% C& dpublic class ActionGroupDemo extends SwarmImpl {
" R, T1 I& R' ?. T+ J        ScheduleImpl schedule;7 f2 B7 |. h+ v/ }: O; H: h
        ActionGroupImpl actionGroup;6 m8 M, ^1 x/ a1 ]) t
        ListImpl list;3 ]: _/ d! O3 u
        char Id = 'a';6 {) g) @; l* {- @3 w  E3 `2 _

+ m& E$ a6 `" U, `! `' E+ Q        ActionGroupDemo(Zone aZone) {
- w; J7 G; b5 H- d                super(aZone);
) m! l, \3 t8 z) d) [                list = new ListImpl(aZone);
3 _. _1 w( s3 `; }5 r. F7 ?# _$ m                swarmSetp();; y1 w" ~' C  ]4 ]- x
                actionGroup = new ActionGroupImpl(aZone);# z, t0 c  ^: b
                schedule = new ScheduleImpl(aZone);! M0 C0 r: v0 C  a2 g  h6 E; O5 s
                try {
  x3 n: J$ C/ L7 R+ o                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
* P1 {) X& s0 P" @                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) g& E; Y+ n( `: X8 S: _                        % u! Q4 z3 C  a; k- D2 U& H
                        actionGroup.createActionForEach$message(list, agentSel);
% A3 {0 G  W# l                        actionGroup.createActionTo$message(this, swarmSel);
9 F0 K, R% F9 ]5 d$ g                        schedule.at$createAction(0, actionGroup);
4 r# u2 G2 P3 C' X2 V5 w! |: t                        schedule.at$createAction(1, actionGroup);6 G! U* o- D8 x7 [
                        schedule.at$createAction(2, actionGroup);
% v( U1 [! f8 i- Y1 ?7 E
6 p5 g; i, c% r" I                } catch (Exception e) {
2 {4 g  B4 P9 S5 g; y. |                        e.printStackTrace(System.err);
) B' V& ]/ Y6 t( c                        //System.out.println(e);
. Y8 ]  p. L; j& e" e                        System.exit(1);7 d, o  Z* d% B; M- F' D7 n
                }3 ]" J* e9 U  r/ S/ K
1 W$ C. a( T. B+ ^( t2 V

; x) k. X( M. x4 |( M        }
! t) j7 f+ o3 I5 d  k1 n) h* h( a9 m' A( D/ c
        private void swarmSetp() {  w( v( g7 I% K* M9 l
                list.addLast(new Agent(Id));8 i% X9 t. I. a
                Id++;1 C% |% ]4 Y3 m, \/ O% I, [
        }* G$ `& G- r$ s* u

) E1 Y6 W" e* c& w, W3 k9 }+ G        public Activity activateIn(Swarm context) {
* }% \4 P% k3 {, n' ^. ]                super.activateIn(context);1 u5 Y. i- v. M/ J
                schedule.activateIn(this);
5 [* d: J' x, {6 J/ ~                return getActivity();# p2 W4 U8 w6 B8 J
        }9 s% b) z" ?; d; v7 j9 m( h
9 m/ n* k8 x+ d* p
        public static void main(String[] args) {
+ G1 y% ]/ t  ^9 m6 W! [$ L, U                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 ]" D" q3 n, H+ u
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 D* ^1 d+ f7 ~9 S, l                swarms.buildObjects();
2 s" `/ `- i" _! B  K% `5 n) B( v                swarms.buildActions();/ f: f( O# W8 K( x* G
                swarms.activateIn(null).run();
7 F8 p% S  ?2 |        }9 Q' N( a5 {9 H- h
) o$ i7 K: z, g
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-12 17:10 , Processed in 0.014000 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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