设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5298|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* L' c5 b. ^' N( A  {6 w; a* h7 o& d) }6 \3 N6 b. C8 h* l3 Z$ _9 l
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- L: ?# _; X/ i3 R& ^
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 X+ `/ g, W2 \; X: _swarm.SignatureNotFoundException; z8 e# X0 X7 a% O
        at swarm.Selector.<init>(Selector.java:76)
7 U6 T, G: K; R# z* [% @        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ _2 }4 A& R- [3 X4 g4 \( u0 V# x
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
) R; J- T: S/ a. U' ~. a0 J% S9 e4 O$ R: o& c% S6 w2 I
% f" s& Y9 x; x& Z
import swarm.objectbase.SwarmImpl;
) j7 y6 I. i: }) [. mimport swarm.objectbase.Swarm;6 ]$ g' W% `* U* b
import swarm.activity.ScheduleImpl;
& b: U" E' t9 i8 l1 mimport swarm.activity.Activity;
" [* v- L2 j3 j/ Y$ O" x' Eimport swarm.activity.ActionGroupImpl;
) t, f9 ^; D2 L, O8 O/ kimport swarm.collections.ListImpl;
' o/ z6 Z3 U. }4 d4 c. Z/ a5 bimport swarm.defobj.Zone; ' p0 z, v( A& o/ f, T, D
import swarm.Globals;- t7 E5 i' U2 G# M6 Q
import swarm.Selector;, `9 ~2 a5 T- D- B& p0 f
import swarm.activity.ActionGroup; " `7 U) w! b# Z0 c. ?4 S
class Agent {& ~" q1 W1 R$ E* J
        char id;
9 N( n) f8 K% @( ^% j5 C+ O8 K( r5 A; Y* W6 l1 L3 |) Q4 c2 G+ _
        Agent(char id) {, o1 V; {5 n$ U6 r, N# Z; Y
                this.id = id;' x: v- f! M& m( r
        }
6 B+ P% B  M/ P% u( I3 B4 s8 ?+ x& V: |! r8 D: E
        public void agentStep() {8 I& Y7 V& l# s
                System.out.println(id + ":" + Globals.env.getCurrentTime());4 T; ?0 b- i. M
        }, Q" [9 T6 @+ B) ]* \
}
0 r7 M7 |1 b0 \4 d9 L  f" Z0 h, h) K* I
public class ActionGroupDemo extends SwarmImpl {6 ~  T) p  r% N; k" k4 N
        ScheduleImpl schedule;
4 P7 }0 u" E/ f( S, e        ActionGroupImpl actionGroup;
/ B# \- U" ^9 k' z1 b        ListImpl list;, l+ c7 Y9 Z, }9 {( P' @* x
        char Id = 'a';/ {8 B% h4 s4 u( A
  J1 n9 J& D, H% {/ }8 M/ w
        ActionGroupDemo(Zone aZone) {5 m3 ]$ Z0 P  i: ~
                super(aZone);
$ c( F6 p$ S& U1 P3 S! s8 r% M$ o                list = new ListImpl(aZone);
& T" r6 O3 S, z4 [) K; c                swarmSetp();; A7 w9 @6 O9 z( W$ B2 D! f
                actionGroup = new ActionGroupImpl(aZone);
) P/ K; ]' q( N7 `1 r                schedule = new ScheduleImpl(aZone);$ @# i6 \: S9 b$ s5 A. F. e
                try {
6 K5 C( t' X/ u+ K& l                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( o8 K, ]- j' X( ~( ?9 {, L, e# B( p                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" G% v7 R8 N" u: _
                        
% ]+ N# b1 j9 E# y. M7 [                        actionGroup.createActionForEach$message(list, agentSel);
" E6 H5 O1 z% ]$ h$ T# S. M                        actionGroup.createActionTo$message(this, swarmSel);0 ^! f4 q' o+ h& u
                        schedule.at$createAction(0, actionGroup);
9 Y, R; k( x1 }! O" T1 J% O% s! K                        schedule.at$createAction(1, actionGroup);$ Z  s/ A) t9 M. V5 t; ?6 l
                        schedule.at$createAction(2, actionGroup);
: c' h! i. j( U/ k6 x3 v
& P1 ~- P0 w- Y* e3 \& C                } catch (Exception e) {+ o5 B% e, L) [7 p
                        e.printStackTrace(System.err);) f: q( E6 k8 R
                        //System.out.println(e);- N# l2 L8 f: R* x* _4 ?5 w' ~, S2 _1 G
                        System.exit(1);
8 h' F; R6 f$ t  r& N4 N; p; z                }/ i; s% L0 x. R0 h! q$ R* q6 G3 e, K

2 z: b3 ~% i6 e( M4 P. O" j2 d6 Q( d, i' I4 P
        }
: _! U- L1 v& ^7 D# [% q
- M1 G, C& d2 j2 p) P        private void swarmSetp() {( _. k# H+ i! {- f1 v6 A/ K
                list.addLast(new Agent(Id));
: e+ u5 R; ]5 P9 P8 V                Id++;
0 w8 p; Q/ H* D5 I. J6 d! }( U        }, q, ^- `6 A3 ]$ f2 r
5 {6 u# ~3 C$ t( K1 z( B
        public Activity activateIn(Swarm context) {
1 ]0 ~0 ^! M) V/ Y" W  X8 d                super.activateIn(context);
1 B# O) `7 R5 I/ b. [                schedule.activateIn(this);% {- N! y! J% W; l
                return getActivity();7 N- c1 J8 C1 ?% o$ L' C; j
        }
9 \% [0 V# ~. Z: `5 ]3 Q2 g. x
( T7 K4 l# C2 |" A        public static void main(String[] args) {
0 p$ P8 p7 F, q- O/ Z+ d. C. X                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ {* R: B1 M6 J( m* G# H( g
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 a% B' w  J% w+ f/ l! Z& f# m8 U
                swarms.buildObjects();( ~5 J2 }# _5 x. e* B/ s
                swarms.buildActions();: L8 D8 T, P4 |& r7 _
                swarms.activateIn(null).run();1 A, S' z! k$ c* H
        }
' K) k7 b3 D0 r* L: r
' T" e1 k0 N( z}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-2 20:44 , Processed in 0.016506 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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