设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8851|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, Z- o) q# ?3 A  U
. p2 i6 J% q( I! d6 Y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( F8 ^, `; Q3 W0 {$ I/ w6 H1 o6 D- y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 Z# q8 ?; ?' k0 E$ a  f0 v
swarm.SignatureNotFoundException
0 J/ A8 l0 t1 d: E        at swarm.Selector.<init>(Selector.java:76)  K2 H; Z; F, F2 `# g
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 I) ^: v" Z$ W
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
: q8 c1 r9 u1 z) S3 E* O$ q3 ~$ `  S. O6 w! ~, H6 Y" k, e* ?; V

  R: U, D6 @  Q% x- B, S6 J, eimport swarm.objectbase.SwarmImpl;
. C* y: S. i' T: T" i; Aimport swarm.objectbase.Swarm;" ^9 k; t9 y9 ]/ O) T
import swarm.activity.ScheduleImpl;# @) n5 m' t) D8 E9 B6 A
import swarm.activity.Activity;  g% V% c% E/ F# ^
import swarm.activity.ActionGroupImpl;2 W( E0 N7 c8 K, ^9 {
import swarm.collections.ListImpl;4 j$ o' D2 ?6 g# u
import swarm.defobj.Zone; 2 H" n. |+ Y- L" _7 ]4 B; s) g) t
import swarm.Globals;
5 g8 I+ T; m( wimport swarm.Selector;* [# q% l4 k8 @  O, s7 y
import swarm.activity.ActionGroup;
1 o: ~! z! v5 e; }7 s) C. _class Agent {
4 {3 Y% M" I' m        char id;
: i/ c2 w' g* _) J! Q% N  B( L# Z: g* o+ R* B& ^* e
        Agent(char id) {; l6 K+ m3 N; R& C* ?+ Y! N
                this.id = id;/ J" B. [: e1 c. N$ G
        }
/ T; i: p2 U6 X- g
% i+ \# m5 D: F0 a/ X        public void agentStep() {; J! @; r' ?9 G1 y
                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 u) N4 P2 G/ v" }3 h6 I        }+ m9 ^, F' D. z7 t/ A. ~8 p) z8 R
}
/ P5 R# p5 G& p& O5 j" A3 q/ O4 B. E4 Y7 ]) v% Z$ A% R! T
public class ActionGroupDemo extends SwarmImpl {5 _" H/ c6 k, X" ?
        ScheduleImpl schedule;: b& q. V7 x( T, G* v1 Z# u
        ActionGroupImpl actionGroup;: {8 m9 R; ^$ ]( G  g% g3 C# o: m: q
        ListImpl list;
- L  e  c/ @8 Q        char Id = 'a';
3 O  @! E/ c( e% h+ q1 b; ^! T1 w3 m; G' r/ l$ s. I/ j" j
        ActionGroupDemo(Zone aZone) {1 H, z! M: g# B' j
                super(aZone);
. \. p+ Q2 a/ V                list = new ListImpl(aZone);6 o: T2 {* t6 [$ s! ]1 p. m
                swarmSetp();
- k% Y9 `& p) \+ q6 ~( ?                actionGroup = new ActionGroupImpl(aZone);4 E: |! ^* R( Y
                schedule = new ScheduleImpl(aZone);% G# Y& U* W. S  C4 H0 J
                try {
' A6 W7 }0 W" C                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
' {; T& L. h3 P2 I                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ o$ l# a& \7 P3 O. h
                        
! y$ A, q8 k; A, E! Z                        actionGroup.createActionForEach$message(list, agentSel);
) Z2 z& n7 O8 u2 `                        actionGroup.createActionTo$message(this, swarmSel);1 ?9 {2 g: u1 e# [" F+ [
                        schedule.at$createAction(0, actionGroup);$ p- e+ A, c. g. U* Y
                        schedule.at$createAction(1, actionGroup);6 G' l, b- i8 h
                        schedule.at$createAction(2, actionGroup);6 E& c. x5 U* c0 {
  s& s' g. X8 p1 c+ {
                } catch (Exception e) {7 ]2 ]8 R% P/ w) x4 p
                        e.printStackTrace(System.err);% g  ~- G9 M5 K3 A' i& Z) C
                        //System.out.println(e);
: q  [; a4 @' l5 e& ?                        System.exit(1);
; d: V6 n7 c* \+ o! e                }: V9 b7 f; P; R

$ m- C* Y; {+ Q9 M) Y. e' [% I
7 Y7 W4 a# S7 X6 H* r3 d9 D2 W        }5 B/ N7 S6 Q! c& w5 I% h$ g

4 k, a4 c6 x2 R$ B% H7 ?7 C$ w        private void swarmSetp() {5 h6 n4 L- G, r6 l  ?
                list.addLast(new Agent(Id));$ @+ _9 h4 @4 T" m% D
                Id++;
0 |2 |" v! l% l2 G& U- O  `# Q        }
* P8 @; f! X, |3 u$ b. g2 c- T! H1 O5 `9 _
        public Activity activateIn(Swarm context) {$ ]! T7 `9 _7 G  k( S, s  \
                super.activateIn(context);
  W4 G  R+ ?3 O9 ~* u7 n( e5 s; K                schedule.activateIn(this);
1 t% c/ n. p) H  x  N* L; t                return getActivity();( `, E1 T; _! M4 y; g% C) W
        }- u' e6 |, a) A; x

' B3 ^$ [: e0 a        public static void main(String[] args) {
5 N7 I% M+ X; {( D7 _                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 d  E' {! Z3 l  h* P                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ B; m& A$ C/ @1 N- a
                swarms.buildObjects();/ ?& l8 ~# ]- k/ ]1 m3 _' t
                swarms.buildActions();4 w' e, w7 C3 K4 e8 [# m1 n* U
                swarms.activateIn(null).run();2 K7 k- i8 Y' i, m% w
        }
% H  a& }# ^: U' U+ B
! a' N6 V) J$ \4 k, L" {2 a}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-24 17:58 , Processed in 0.019812 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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