设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6988|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : Q/ y  \+ X2 P. r
$ c9 \6 A- b( h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; N2 v* Q- Z( A. ?以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% }, |. {. [, f" `swarm.SignatureNotFoundException
* L" N3 i$ n2 y/ z2 u4 o9 x" K        at swarm.Selector.<init>(Selector.java:76)
% Y7 H$ y( J5 C0 H        at ActionGroupDemo.<init>(ActionGroupDemo.java:37): }. l. f  C. _  q- \
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
- h/ u- C. O! R0 O8 S; r5 w
9 q3 L$ m/ c4 M6 f3 _6 C/ H2 ~) T. ]" H0 }( ]$ B: p
import swarm.objectbase.SwarmImpl;
% V$ ?5 [2 E4 |+ m4 s5 oimport swarm.objectbase.Swarm;
0 _/ T. Q( w! V6 D2 e$ Y4 Pimport swarm.activity.ScheduleImpl;" }+ r4 g$ H( d. Y& ?6 f
import swarm.activity.Activity;1 A  x% l% I/ }, f
import swarm.activity.ActionGroupImpl;5 T/ U% c2 h' L" J1 s4 U0 [
import swarm.collections.ListImpl;) t5 {4 ], e! C" a" {
import swarm.defobj.Zone; , Q' l* S- g  e9 e7 I, o! j
import swarm.Globals;1 h$ b: {- F. C5 {% h8 t( ~
import swarm.Selector;
! q3 n8 r5 K- C/ j2 \: Pimport swarm.activity.ActionGroup;
9 U0 `% m7 V. h6 m5 y/ {class Agent {
7 D" c  t+ |% P# U! ~2 ]( i5 h        char id;) p8 m/ ?4 O! b$ L
- X6 D+ N0 j& r1 z8 O6 `
        Agent(char id) {
. e6 Y' M5 C+ B% h  Q                this.id = id;
3 w2 m- n. J/ _# i- f2 }        }; y0 h3 s% n: s* `! [  N

8 R3 N" X9 S+ e. C        public void agentStep() {
- u; O/ F8 S' Y) _! k8 i) g                System.out.println(id + ":" + Globals.env.getCurrentTime());( M) q. r1 m5 {+ i$ v2 Y$ U
        }- I2 R$ @! @: u3 B0 n* E( m0 ?
}! y$ H$ M& h) l+ g* @) c
7 ]7 e: z9 }# N
public class ActionGroupDemo extends SwarmImpl {
8 P1 o  }  ]1 R$ H7 E; v/ @: W        ScheduleImpl schedule;  ?! G4 f1 v, p  P: f
        ActionGroupImpl actionGroup;2 w4 d! H2 U) m9 m+ z, ~; R
        ListImpl list;. F  B1 r% E) X/ |0 M3 A$ q
        char Id = 'a';1 Y% q9 B& n  d' e5 G1 m
: U# R$ m9 B4 Q) E6 w/ ^# V
        ActionGroupDemo(Zone aZone) {
* V# k5 W7 D4 x# g7 v                super(aZone);
2 A8 B4 f, B# H+ C                list = new ListImpl(aZone);
! H8 |, _+ {, c                swarmSetp();
6 j; M& O6 y% U$ O% m                actionGroup = new ActionGroupImpl(aZone);6 Z& g1 e% S3 t
                schedule = new ScheduleImpl(aZone);
# W' v& Y! |8 d; ~( h6 Y                try {8 v. a0 f% Y5 y0 ]
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
' J! E1 Q$ l7 {4 M, \9 `& Q                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  Z: I  a& h" U+ i0 O* d/ Y                        ( v! z, @9 w* H. t& r- n
                        actionGroup.createActionForEach$message(list, agentSel);7 i% V; k8 ^1 B2 }0 X
                        actionGroup.createActionTo$message(this, swarmSel);
( i& o7 F- u# A5 _4 t$ Y! f                        schedule.at$createAction(0, actionGroup);
6 P, ~+ P- ]8 i9 z( r                        schedule.at$createAction(1, actionGroup);
8 V- O  q4 ?# D1 o                        schedule.at$createAction(2, actionGroup);
2 w3 z: I# K) J6 k0 @/ }% a4 ~1 J" v6 T' p" T0 f, Y, i
                } catch (Exception e) {
7 @% M6 y; x5 ~7 U7 c6 i. i                        e.printStackTrace(System.err);4 k7 b/ i( `9 R% [
                        //System.out.println(e);
  }) @7 o4 A, P5 [" y5 D                        System.exit(1);; C. [6 E/ i7 ^. o( a: f; \
                }7 [) ^  b1 }' i, D1 h
  K2 @9 x: A7 j- L
& X0 d! a) D7 A' {% U! g  d
        }
$ M- j8 E/ u% U/ \3 t9 @- L! X* u
        private void swarmSetp() {! ~0 R0 C0 P  ^* e
                list.addLast(new Agent(Id));
+ _  y  o# {& S- b5 o                Id++;9 Q+ l/ e0 s, r$ B
        }
, t8 W/ L2 S2 H' a, o
, W7 L  c: G( q* p  Z2 W5 w' Z% F        public Activity activateIn(Swarm context) {8 X, Q" c# E+ D) C$ L! h4 @) C
                super.activateIn(context);2 g" r  b# ]3 `! n" ~0 o' B9 h
                schedule.activateIn(this);+ j. e) N8 {4 c& s- Z
                return getActivity();
) [. P/ e6 l' A! W. `4 [$ U2 ^        }$ I$ I" s) N6 N1 [1 x

4 H$ j) M: C" _        public static void main(String[] args) {
7 `* u9 n& T! Y5 ?! b                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ o4 n% J% W& w3 V                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; n2 B  E% C  m0 B+ P2 A2 }: _) A" `
                swarms.buildObjects();
7 i+ g- t* D3 W# x, m# P7 b( W( b                swarms.buildActions();
9 t5 Q$ f8 ]$ v; q; Z" }  r6 `                swarms.activateIn(null).run();
' T/ p* P' I1 E        }; h" ?7 _4 M( [0 B) b- L

* m+ I1 J1 ^% h+ n- ~$ m# l) e4 l}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-15 20:25 , Processed in 0.014765 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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