设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13073|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* w, S  R: v1 x" K- [3 d, f3 ]5 J$ |
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 p, G' ?9 O: ]! P: Q* i4 I以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 G9 @" u$ s: I1 Y) ~9 Z
swarm.SignatureNotFoundException# @8 c; V: y! o0 C8 v
        at swarm.Selector.<init>(Selector.java:76)
* U1 i: D  a% g1 U7 |& d        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 G+ O1 B; B2 U. p0 t# R' f, j        at ActionGroupDemo.main(ActionGroupDemo.java:67)
# W  x& H. L1 _5 D/ o
: _) w  T7 P" }/ I# ]8 X7 ~, S' C* Q+ \9 F) B- t$ ]# O
import swarm.objectbase.SwarmImpl;4 c4 t* ?4 w; K3 N! \  K
import swarm.objectbase.Swarm;
2 y! I0 Z% e( kimport swarm.activity.ScheduleImpl;, F3 W, n: i$ S4 `* r/ u  c
import swarm.activity.Activity;( K+ c" Z5 t' U( i
import swarm.activity.ActionGroupImpl;
/ ~) m2 H3 q: l) R2 R5 P: ^* @/ f+ iimport swarm.collections.ListImpl;
- ~, H. t% B5 _0 i6 W* B: I) ?3 Nimport swarm.defobj.Zone;
5 p$ o, ?% K5 yimport swarm.Globals;! F3 X# S9 Y2 a+ x; d: u9 ~
import swarm.Selector;# }5 i+ t, Y$ M! L8 Q$ ]
import swarm.activity.ActionGroup; ! [, q9 Y3 O0 i) q% o
class Agent {
. d7 V3 _. k$ V$ \1 D. p' @  L+ W/ A- Z        char id;8 T3 a0 O, l$ a
$ {5 L/ c) P. J4 |( ^1 H
        Agent(char id) {; E2 M, h9 W9 B5 `7 d
                this.id = id;) p, \7 g3 C' t1 E* m9 m
        }
# y4 l8 g% P& n: A  I4 A9 N( t  k% h
        public void agentStep() {3 {2 E9 I2 z3 F' l5 [  F1 K* _9 D" p
                System.out.println(id + ":" + Globals.env.getCurrentTime());
2 G/ |  g/ o3 d, q7 H7 w; d/ I        }" E- P: \6 [- H
}
; K* w! R* m% D; Z% O: Q4 I6 o6 s! ]" n7 m0 W) N4 P3 r
public class ActionGroupDemo extends SwarmImpl {$ w; Y0 M% e% d. I3 g4 e: D
        ScheduleImpl schedule;
: \" V: p2 E& `; p5 ~        ActionGroupImpl actionGroup;  F. F( Q- p" @( t6 _$ r
        ListImpl list;
- V% m- C% ]% H: r/ o, K0 x; M$ y        char Id = 'a';
5 p3 n, V! L$ K' @; P; T( ^! |4 x! j7 u" [8 u  _
        ActionGroupDemo(Zone aZone) {
& \9 v2 B. x8 e: d# P                super(aZone);
* b$ q6 _# z* E  S2 E: x2 u                list = new ListImpl(aZone);
  K4 t3 _" n& V  N                swarmSetp();, c4 y/ j0 ^$ ~+ w  P: l9 U
                actionGroup = new ActionGroupImpl(aZone);
( d4 x6 ~; D8 H                schedule = new ScheduleImpl(aZone);
# T; t9 h; q: d5 a# L/ a1 V                try {4 J+ i% a1 Y5 b2 v
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);+ H4 g. f2 ^0 R9 a
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% o$ Q" S8 J) l' |/ y2 J. D
                        
8 F& n7 P5 f' g5 Y9 j  N& ~: P                        actionGroup.createActionForEach$message(list, agentSel);
. [" r) u4 b' r$ s5 d- h8 g                        actionGroup.createActionTo$message(this, swarmSel);
" ?  S( w1 X! P; b                        schedule.at$createAction(0, actionGroup);
8 _& I2 C$ B9 @3 _                        schedule.at$createAction(1, actionGroup);: d+ S  X& \' v5 M' ]: K
                        schedule.at$createAction(2, actionGroup);
$ U1 o# v" G! l% S  t: D* a0 `. n. v& Q' w
                } catch (Exception e) {
& x2 j7 O+ h2 s9 {/ _# C                        e.printStackTrace(System.err);
7 `5 ?3 @5 Y6 n" z; U& L4 N                        //System.out.println(e);" p$ K' _  U5 Z- w4 _' @5 T
                        System.exit(1);
+ s1 L8 o( W* H( Q% j                }7 ~$ s- d6 l9 k3 {
2 _1 U- D) d2 b0 l

' d+ @0 U8 _* J2 g) Y, I' r, w: a        }
) f  _& l$ p% [3 Z. @; F
0 {& o! @) b2 k: p, r% Z9 }        private void swarmSetp() {
7 R6 h# D5 o. b6 y# g1 I                list.addLast(new Agent(Id));
" g( v2 F3 _: l& k4 t3 L                Id++;# D0 S5 S1 P( P) v& ]# l
        }
* S+ n( Z- }, o& b( k/ P( m) H/ r9 J6 u
        public Activity activateIn(Swarm context) {1 i* b$ z5 F, t; M/ o, A
                super.activateIn(context);* b, ?1 k- E1 }( ?6 W
                schedule.activateIn(this);
. T, N" s0 E# Y9 S                return getActivity();/ k/ d  ]$ N0 y& R
        }1 J$ {7 m  |1 e  p
. ]& [% ]; ^0 U. p
        public static void main(String[] args) {
$ U. j3 C' x9 l                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# }' X8 j; ]5 H2 W* A5 e* \5 I                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' X% m$ m1 j# Q" s
                swarms.buildObjects();
  ^% X5 K3 f; a" I                swarms.buildActions();1 k6 G& X3 e$ V, H4 S
                swarms.activateIn(null).run();
( v$ M& p! T/ f2 G        }
6 [  S- e& A" b9 R4 s, Y' z& B
! X1 f$ X( Z: c" A/ u; _}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-27 15:13 , Processed in 0.016375 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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