设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7773|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 v+ T$ q# A1 }7 i7 z7 [! E. w5 K( N( J1 G& u5 o$ ~. V
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; p* J/ A' h5 K) t/ |' P6 ^( e
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 @: J2 m# d! G* T- c; F
swarm.SignatureNotFoundException
4 ]' p% i6 v9 g, u7 d7 s        at swarm.Selector.<init>(Selector.java:76)
6 y3 ?7 q6 Z  y) J& }7 @; z% n        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 _& ~" q  S5 \" _! I        at ActionGroupDemo.main(ActionGroupDemo.java:67)' I1 s. A8 R; t5 Z( C

1 d2 w* k' c+ \& e: r
# l" i6 i. Y( T" Kimport swarm.objectbase.SwarmImpl;
1 P+ k% H" P0 N1 J* zimport swarm.objectbase.Swarm;3 V3 q$ Q, E7 m( ?3 m
import swarm.activity.ScheduleImpl;
" H$ e  u  W  Q4 Dimport swarm.activity.Activity;  g2 [$ o; p( S' k6 o
import swarm.activity.ActionGroupImpl;, d, w/ Q1 F2 I8 @5 S! `' `; q3 r
import swarm.collections.ListImpl;" }6 Y, X) W+ t, z5 E4 n* f6 s
import swarm.defobj.Zone; ; x, L3 `% |* r% g
import swarm.Globals;7 H' {5 O* ~. N; \% ]
import swarm.Selector;) V" `- r: u- K/ x
import swarm.activity.ActionGroup;
! _0 ]! s+ b4 F  uclass Agent {
, A' x/ C& J9 ?0 S/ R        char id;
% @! [8 V5 E7 b5 H/ k* E* b3 Z, d5 z0 f2 F% R+ W! Q
        Agent(char id) {9 `5 k9 \1 B6 b7 O* U
                this.id = id;2 p7 l- N# Q- J$ y
        }- [0 _9 I) ^! x/ c2 A% a

; f$ [3 T. A/ {3 E( D6 ?5 H, [8 c        public void agentStep() {
! A; B2 H  X& o% r* K4 P- [2 d                System.out.println(id + ":" + Globals.env.getCurrentTime());, h# I% O; z3 m& z. o
        }0 _+ _/ D' S0 a5 K3 H7 s! s
}4 ^( }8 A! s& n  q- y( Q5 Q
( z& W' i5 v0 `. Z7 A
public class ActionGroupDemo extends SwarmImpl {
! P+ Y: y2 M$ V6 E. P        ScheduleImpl schedule;! j  {6 f% G# c1 X+ y7 w
        ActionGroupImpl actionGroup;( k8 p4 N, z) P0 ]7 Z. \
        ListImpl list;
5 s5 T, v/ d' E5 ^: v        char Id = 'a';' }$ I/ ^7 T: _* @
6 _% R, W; D. I) v8 ]
        ActionGroupDemo(Zone aZone) {
0 Z5 @8 U. r! M9 u/ K                super(aZone);9 X0 n9 v1 `+ ^  V
                list = new ListImpl(aZone);
& r. X# _/ z& j2 Z, Q                swarmSetp();$ o; Q2 g$ h) u3 Q& r/ F
                actionGroup = new ActionGroupImpl(aZone);1 m) X& _! T' w' @
                schedule = new ScheduleImpl(aZone);
5 G6 N) x( b# l- j1 B                try {
' S" f4 \0 U8 W7 o7 @% N4 a( ^                        Selector agentSel = new Selector(Agent.class, "agentStep", false);" U1 A" ]; n' f" b6 x6 n
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 Q6 ^0 L2 J2 w: H% M
                        
$ y7 [* n5 P* U) ~5 Q+ Q                        actionGroup.createActionForEach$message(list, agentSel);  x. o3 w- \1 n  F2 L; E/ d
                        actionGroup.createActionTo$message(this, swarmSel);$ h/ N9 O* e1 [
                        schedule.at$createAction(0, actionGroup);" ?' A6 c. A* I6 ~
                        schedule.at$createAction(1, actionGroup);
$ Z  p( a, i0 F& m0 F                        schedule.at$createAction(2, actionGroup);
* E$ A) |" k- S' W' U0 k2 s( w1 c  e' d
                } catch (Exception e) {6 Z) N3 Z- Q4 ?' w( I  d0 [
                        e.printStackTrace(System.err);' o$ W9 v& |! W; V' r
                        //System.out.println(e);
5 i3 ?5 K9 E+ j* t1 M+ N# {, [1 u7 N                        System.exit(1);
$ ?8 K, [( H$ s) Y; o                }  T* k7 i! ?; W' e. F

' P. i( Y# b! ?8 g+ u
' Y/ X: o) G' w" D; K        }
" r2 s) J- a* }3 O- c# |+ Y1 p! i% y2 O+ [: c6 \$ m1 j
        private void swarmSetp() {& f' Y  I9 N' ^8 v- M0 @
                list.addLast(new Agent(Id));
- a8 _+ }) _) v& q# W* N$ C                Id++;% [3 V: m3 r2 `, b( m8 @
        }+ b4 M0 i- G$ q2 @' ~5 V
, k# u+ y7 e# N
        public Activity activateIn(Swarm context) {
  N2 r2 ^. L# n% n* r5 n4 o                super.activateIn(context);
$ F4 ?7 j; n. \( z( W7 Q& w  {* i                schedule.activateIn(this);5 C7 e# J" M; n1 B5 _/ t5 q. X5 M
                return getActivity();0 Q* }0 n2 U% N
        }6 i1 `: P7 _; j4 r
/ R- E2 [/ x, j
        public static void main(String[] args) {9 a2 E1 o/ Y( \( h
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ Y% P( p  n! u3 g& n6 O                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 _+ l5 ?: a' ~4 V' s: U: }4 I
                swarms.buildObjects();9 o7 H: q7 B' T; Y: g, E
                swarms.buildActions();/ j- r  `" G% y! G$ {* P
                swarms.activateIn(null).run();6 n) `! J2 P* m9 u; b
        }5 J' ?+ e8 n$ v; G* K# A

/ H: ^: }# I% X& @; y0 |2 d' _}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-14 06:14 , Processed in 0.013973 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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