设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9137|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( ^' J: b7 u1 v; H0 }) U$ f! H. |/ m' m. X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ ?+ E2 u1 S2 U& p8 t2 A5 o
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# C6 l6 X6 o5 a3 C& w% v
swarm.SignatureNotFoundException! I$ m  i# R; I6 _6 N; {
        at swarm.Selector.<init>(Selector.java:76)
9 U; ]/ X6 C) \9 `7 r7 x        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! T2 e8 K( a) K
        at ActionGroupDemo.main(ActionGroupDemo.java:67)$ h( O$ B7 U& d  u8 c" Q
: C  `3 Z  c! `
* \) {/ O) N; d- A9 j& [% q
import swarm.objectbase.SwarmImpl;
$ j6 e  z% e) ~import swarm.objectbase.Swarm;
' p9 a  g* Y' {8 s% Fimport swarm.activity.ScheduleImpl;
* l  a5 B! B0 Uimport swarm.activity.Activity;' }8 ~; W" @4 \$ ]
import swarm.activity.ActionGroupImpl;
) C2 o2 a8 ^) [$ T# ^1 @# D% {import swarm.collections.ListImpl;
) Z7 h# ?% z  J* N0 Pimport swarm.defobj.Zone;
9 D) ?) H% S8 m! uimport swarm.Globals;2 J! _- M; r( ]' w* q+ G
import swarm.Selector;
2 M9 h& `2 k5 M+ S- P+ b7 \! }3 a& l& himport swarm.activity.ActionGroup;
8 H' e' m. L0 f, H& P. M: qclass Agent {% k& `5 _; o. m, G" R5 I
        char id;
& R5 G8 u& i! V# W2 X* g( `$ F* s3 [& F0 u5 I/ b0 |
        Agent(char id) {8 @4 j+ [# X' v6 T" V- ]
                this.id = id;; c/ b) _1 D* n# Q0 n
        }% C( Y6 P9 V0 L8 o. a- _/ ~
* u, D6 Q- I4 @7 L# n9 Q% C: s2 c
        public void agentStep() {
; e6 E( @' z. }7 Q0 d8 N                System.out.println(id + ":" + Globals.env.getCurrentTime());  L% _& v1 w! i' L" _9 l
        }  i: B: X3 B) r( @& u
}
  n' {9 p  E- p8 {# W2 r- `: |; R; D
public class ActionGroupDemo extends SwarmImpl {
% f1 [1 y' X6 a. g% j4 [        ScheduleImpl schedule;
9 F0 M8 u: T* D4 |1 K9 I  d        ActionGroupImpl actionGroup;
$ s# \' W0 `8 I$ ~        ListImpl list;  e, w' Y5 d5 L8 O6 |& R
        char Id = 'a';% D3 H, {) _+ l7 |1 y
) W! W1 C& T6 q; l1 g& h
        ActionGroupDemo(Zone aZone) {
+ y# s( V0 p4 u: X5 J/ v5 w/ Q                super(aZone);% T% m% s& O- {' S
                list = new ListImpl(aZone);
6 o, n+ \9 @# K6 H* n                swarmSetp();
) W1 B6 Q, \; V                actionGroup = new ActionGroupImpl(aZone);
" f' K/ {0 t/ [$ i7 e# ^4 D                schedule = new ScheduleImpl(aZone);3 Y/ a7 b  N  I' ?1 d- _
                try {
4 u' Z8 M1 L. j$ d0 ?                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 T) x( N. h0 H" c                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ E( Q2 U* H! y- h" A% W/ I( }2 t                        
) `, B, O  l; L1 P                        actionGroup.createActionForEach$message(list, agentSel);
2 l& C; ~; [% K, b! m* f. B                        actionGroup.createActionTo$message(this, swarmSel);
% ?7 {; T2 X& B& u( _8 h7 Q% }                        schedule.at$createAction(0, actionGroup);
8 s) w" o6 ]: k+ g% D$ N                        schedule.at$createAction(1, actionGroup);
) Z$ n8 }7 ?% v, r% Q' Y5 Y5 T+ O! Q                        schedule.at$createAction(2, actionGroup);
2 p  @( ?" o( _; z7 u3 F
* B3 k" u" m# }: S                } catch (Exception e) {
: y2 m4 j- x2 j, c7 t2 K                        e.printStackTrace(System.err);, Z' ~3 U' X4 E+ H; ~3 j6 P1 Z& \
                        //System.out.println(e);
, Y2 Y" U& d! |7 h* z! b* |, J                        System.exit(1);; z0 n- I7 H  @4 W% V4 x
                }
, x) L3 L6 ~; x/ w/ o/ k) P* Z0 ]* K- U

/ f2 H" q7 |$ ]6 i) c, E        }# I  l- Z* U3 v, v
: K0 t  V# I4 j
        private void swarmSetp() {
- O6 z2 L7 ]) K% ]                list.addLast(new Agent(Id));
" W: H- ?( t. I                Id++;
& g& k/ H8 |+ Z! E. {) Q# v( \        }, L$ q, h  @$ a. L1 `

8 i- u. h) A- |8 P- l6 A( E: k) A) \        public Activity activateIn(Swarm context) {) f( h5 S3 U9 k) P7 l! K3 O
                super.activateIn(context);3 b  [0 A% x% g8 b: C( g5 f# m
                schedule.activateIn(this);" n/ v3 \. U: v4 K+ S6 \4 l6 h
                return getActivity();! o5 S$ m  e8 G" D" L+ g, w% R: C
        }
6 ]0 j4 y6 d2 x: e, G3 N. u9 h8 g8 x8 I+ W+ G/ q6 g0 }5 m4 G, C
        public static void main(String[] args) {
2 y3 f4 q8 z6 @; _$ b                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 A0 z, O9 X) H+ R. E                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. b' h5 I/ n0 K5 l, N5 ^; Z! o. z8 [
                swarms.buildObjects();
" c5 n  z+ [2 x& Y6 M                swarms.buildActions();
& \. {1 M( z0 s  j, d4 g                swarms.activateIn(null).run();9 W) ?! a* a% ~/ Z
        }, `( t1 c2 u& b* |
& r/ m, `% _. @, w7 a" |9 q7 o
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-2 13:34 , Processed in 0.019200 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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