设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5260|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" K% w  y. m( A5 F7 Y
- C8 z  ^  v& v* E3 Q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 H& F$ U$ N$ p1 v
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' X" \8 \2 N$ N" Z" t9 w
swarm.SignatureNotFoundException
$ i5 d& C8 ~0 m& M- @        at swarm.Selector.<init>(Selector.java:76)& O% Q7 H4 {( j9 G9 a
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 J5 L5 q( o% D8 F! q" O/ X$ L        at ActionGroupDemo.main(ActionGroupDemo.java:67)7 `2 c# z5 T. n+ R5 p
0 H. m9 ^( D8 k

5 Z% b7 w4 Z! ~. Rimport swarm.objectbase.SwarmImpl;! j) Q/ n6 q- b. q! ]
import swarm.objectbase.Swarm;
2 N; ~' _: h* m: `! timport swarm.activity.ScheduleImpl;$ T; h! D" _' ~6 A/ b6 i
import swarm.activity.Activity;& y0 ^* S2 ?; ?* p8 o- N' e
import swarm.activity.ActionGroupImpl;7 n" `1 [# a" K/ ]5 J% Y  l
import swarm.collections.ListImpl;
; a! |5 ?0 W1 Y6 C# k7 yimport swarm.defobj.Zone; / t8 g! o6 f; ]' q2 }+ }9 J
import swarm.Globals;
* q3 p* T+ g4 ], ]import swarm.Selector;
  e5 d* y  c5 O6 E' M) R1 oimport swarm.activity.ActionGroup;
. h5 e! Q% `) M# O9 P5 eclass Agent {
; o1 }( o+ l: N, m" X, \; f        char id;( I" y" x' a' f7 p

. T  o  j3 j3 H        Agent(char id) {+ U2 l! J9 L$ q) K3 D' X1 F
                this.id = id;( B+ h4 ?+ U2 ]) _% {/ g
        }
  m- e/ @" E3 d3 i6 Q: o' X
) ?$ x; J3 v2 z& l9 A8 c" {$ }        public void agentStep() {
- N" {/ x' e1 m. t! H                System.out.println(id + ":" + Globals.env.getCurrentTime());
& b' Z' R0 t- v- l/ H: _3 ~        }4 H  L; o) m0 y
}
0 j9 Z: u, @2 [$ ], p- y8 |# N6 I, A, s5 {7 i
public class ActionGroupDemo extends SwarmImpl {
0 M5 Q' B) H* ]( f$ X! R! O3 n: b        ScheduleImpl schedule;
9 V% n/ C' q" y/ ?1 t        ActionGroupImpl actionGroup;' X1 |9 H/ x) m! ^. e8 F6 |1 \% Z
        ListImpl list;# U; K/ Q3 f. C- d  e+ m/ x7 d& K" S
        char Id = 'a';# k. Y4 k. q* p: e

; x$ E' L. N. F+ q        ActionGroupDemo(Zone aZone) {
* D; w  ]1 w3 v  N                super(aZone);
4 A6 t: n3 z1 o6 V                list = new ListImpl(aZone);
* _3 s* K1 {; z! Y                swarmSetp();
2 I9 D  N! C6 P6 u' F$ \8 ^# B                actionGroup = new ActionGroupImpl(aZone);# \# l' S" I0 m& m6 K
                schedule = new ScheduleImpl(aZone);
' H+ _1 m) P9 D7 W6 {. Y                try {' y4 M- h& y- S( k* k% L( c- K1 ]
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);# B# J8 W8 d, c: }! O
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ d2 b: V& B2 \. k; S
                        
0 Z* z- a% b- _# k) D2 C, ~                        actionGroup.createActionForEach$message(list, agentSel);+ N! o3 e, ~/ `1 k' b. E( Q9 P& o' E
                        actionGroup.createActionTo$message(this, swarmSel);
8 w: @0 O8 W( _0 u( h) D                        schedule.at$createAction(0, actionGroup);3 S/ a* M; K' y+ W
                        schedule.at$createAction(1, actionGroup);% z: a% j  V/ |+ Z# n# i9 t9 o
                        schedule.at$createAction(2, actionGroup);* |6 {+ J* y( h7 X6 l

8 B8 U" T: n9 B5 V                } catch (Exception e) {( Q# m5 P# A( x9 _& _$ M7 F
                        e.printStackTrace(System.err);9 a: A) z. J# A& k$ u' x  |
                        //System.out.println(e);9 l; i. @# ^  O9 L$ T
                        System.exit(1);
  q0 J- G* R- c7 o                }
9 d" l. x1 z/ L6 o: T
" @  Y8 Y8 A( ?+ z5 s$ A' D4 b7 [% B  o$ V  q- l4 B
        }
9 \  j) e, I* ?# R2 k5 B$ c1 B( A
        private void swarmSetp() {- b1 c" j. q4 O7 t" H$ X2 M+ k
                list.addLast(new Agent(Id));0 f$ q1 [. r$ A5 a( y  Z+ S
                Id++;
6 o1 Y5 u3 e, h0 I        }
! N' F4 r& ^  o8 y+ S2 \0 k$ u+ E' f7 t
        public Activity activateIn(Swarm context) {/ i' W# K- P* @" I
                super.activateIn(context);
4 x. r+ v# S' p+ G, }5 p6 v- v                schedule.activateIn(this);
% T0 l. k7 ^" G6 W$ w                return getActivity();
' R5 N& _- v5 ~' U6 d, A6 s; g# w        }
9 P/ P0 R# }" h% l: ?, ?) Z; J4 S% h# q* R. i1 k7 n3 N( y" Y
        public static void main(String[] args) {
& `8 n8 E/ v$ Z( `5 C" U7 j1 P                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ c' R) G9 S' @7 e, H# E' W, k8 F
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 o4 s/ t7 i6 o5 u- _! I1 ^
                swarms.buildObjects();
+ d+ E/ `% J+ `0 T' K8 w) E                swarms.buildActions();" Y; p+ R, q  e4 A* b! R/ r
                swarms.activateIn(null).run();6 H8 g, ^+ p: J/ G! |% u5 ^: `
        }$ j8 `  Y' t* }4 T4 }: q9 V

1 `/ Z# y. F' @, I}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-1 15:24 , Processed in 0.016181 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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